(이전에 만든 mysite에서 나가서 /home/song에서 작업 시작)

#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys
def main():
"""Run administrative tasks."""
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tutorial.settings')
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
./manage.py migrate
이후에 ls 해보면 db.sqlite3가 나와야 한다.

vi tutorial/settings.py 수정
ALLOWED_HOSTS = ['*']
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'community',
]
TIME_ZONE = 'Asia/Seoul'
from django.db import models
# Create your models here.
class Article(models.Model):
name = models.CharField(max_length=50)
title = models.CharField(max_length=50)
contents = models.TextField()
url = models.URLField()
email = models.EmailField()
cdate = models.DateTimeField(auto_now_add=True)
from django.contrib import admin
from django.urls import path, include
#from django.conf.urls import include, url
from community.views import *
urlpatterns = [
path('admin/', admin.site.urls),
path('write/', write, name='write'),
path('list/', list, name='list'),
// 그렇지만 15번처럼 처음부터 url 만들어도 될듯
vi community/views.py 수정
from django.shortcuts import render
from community.forms import *
# Create your views here.
def write(request):
form = Form()
context = {"form":form}
return render(request, 'write.html', context)
mkdir community/templates
vi community/templates/write.html 작성
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>write</title>
</head>
<body>
<form action="" method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn btn-primary">저장</button>
</form>
</body>
</html>
from django.contrib import admin
from django.urls import path, include
#from django.conf.urls import include, url
from community.views import *
urlpatterns = [
path('admin/', admin.site.urls),
path('write/', write, name='write'),
path('list/', list, name='list'),
path('view/<int:num>/', view, name='view'),
from django.forms import ModelForm
from community.models import *
class Form(ModelForm):
class Meta:
model = Article
fields = ['name', 'title', 'contents', 'url', 'email']

from django.shortcuts import render
from community.forms import *
# Create your views here.
def write(request):
if request.method == 'POST' :
form = Form(request.POST)
if form.is_valid():
form.save()
else:
form = Form()
return render(request, 'write.html', {"form" : form})