728x90
반응형
SMALL
프로젝트에 books 앱 추가
python manage.py startapp books
setting.py : 어플리케이션 등록 (서버에 반영)
INSTALLED_APPS = [
"books.apps.BooksConfig", # 새로 만든 앱 추가
"polls.apps.PollsConfig",
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
]
models.py
데이터베이스에 사용할 데이터들의 형태를 정리하기 위해 books 폴더의 models.py를 다음과 같이 수정한다.
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=100)
authors = models.ManyToManyField("Author")
publisher = models.ForeignKey("Publisher", on_delete=models.CASCADE)
publication_date = models.DateField()
def __str__(self):
return self.title
class Author(models.Model):
name = models.CharField(max_length=50)
salutation = models.CharField(max_length=100)
email = models.EmailField()
def __str__(self):
return self.name
class Publisher(models.Model):
name = models.CharField(max_length=50)
address = models.CharField(max_length=200)
website = models.URLField()
def __str__(self):
return self.name
앞서 polls 어플리케이션을 만들었듯이 터미널을 myproject로 위치시키고 다음을 입력한다.
python manage.pt makemigrations books
python manage.py migrate
admin
새로 만든 데이터 (model) 관리를 위해서 admin 사이트에 등록한다.
from django.contrib import admin
from books.models import Book, Author, Publisher
admin.site.register(Book)
admin.site.register(Author)
admin.site.register(Publisher)
그 다음, 테이블을 데이터베이스에 반영한다.
python manage.py makemigrations books
python manage.py migrat
728x90
반응형
LIST
'App Programming > Django' 카테고리의 다른 글
[Django] 웹 서버 연동 원리 (0) | 2023.06.28 |
---|---|
[Django] Books 어플리케이션 (2) (0) | 2023.06.27 |
[Django] 폼 (Form) (0) | 2023.06.27 |
[Django] 템플릿 시스템 (2) (0) | 2023.06.26 |
[Django] 템플릿 시스템 (1) (0) | 2023.06.26 |