[Django] 모델 생성

2022. 3. 10. 22:14·캡스톤/Django

1. Post 모델 생성

Post 에 필요한 데이터의 종류는 제목(title), 내용(comment), 작성일자(created_at), 작성자(author)가 필요하다.

blog/models.py 를 열어 다음 코드를 입력한다. 참고로 models.py 의 역할은 '[Django] Django 구조' 에서 말했듯이 models.py 에서 정의한 모델과 맞게 DB에서 올바른 데이터를 가져오기 위함이다.

from django.db import models

# Post 모델
class Post(models.Model):
    title = models.CharField(max_length=30) # 게시글 제목(최대 길이 30자)
    content = models.TextField() # 게시글 내용(TextField()로 선언했으므로 제한 길이 없음)

    created_at = models.DateTimeField(auto_now_add=True) # 작성일자(DateTimeField()를 사용해 월,일,시,분,초 기록)

 

여기서 작성한 Post 모델은 파이썬의 클래스로만 존재하고있기 때문에 이를 DB에 반영하여 테이블을 생성하기 위해 do_it_django_prj/settings.py 에 blog 앱을 등록해준다.

이후 터미널에

 python manage.py makemigrations

위의 명령을 입력해준다.

 

입력을 하면 blog/migrations/0001_initial.py 가 생성된다.

 

이후 실제 DB에 모델을 적용하기 위해

python manage.py migrate

위의 명령을 입력해준다.

 

2. 관리자 페이지에 포스트 적용하기

생성된 Post 모델을 관리자 페이지에 적용하기 위해 blog/admin.py 에 코드를 작성한다.

from django.contrib import admin
from .models import Post

# Post 모델 등록
admin.site.register(Post)

 

이후 터미널에 

python manage.py runserver

작성 후, 'http://127.0.0.1:8000/admin/' 에 접속해 확인해 본다.

위를 보면 [BLOG] 에 Posts 가 생성된 것을 볼 수 있다.

'캡스톤 > Django' 카테고리의 다른 글

[Django] 포스트 목록 페이지에 부트스트랩 적용  (0) 2022.03.18
[Django] CBV로 페이지 만들기  (0) 2022.03.11
[Django] URL 설정  (0) 2022.03.11
[Django] 블로그 앱, 페이지 앱 만들기  (0) 2022.03.10
[Django] Django 구조  (0) 2022.03.10
'캡스톤/Django' 카테고리의 다른 글
  • [Django] CBV로 페이지 만들기
  • [Django] URL 설정
  • [Django] 블로그 앱, 페이지 앱 만들기
  • [Django] Django 구조
오도형석
오도형석
  • 오도형석
    형석이의 성장일기
    오도형석
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • MSA 모니터링 서비스
        • DB
      • 스파르타 코딩클럽
        • SQL
        • Spring
      • 백엔드
        • Internet
        • Java
        • DB
      • 캡스톤
        • Django
        • 자연어처리
      • Spring
        • JPA
        • MSA
      • ETC
        • ERROR
      • 개발 일기 N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 인기 글

  • 태그

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
오도형석
[Django] 모델 생성
상단으로

티스토리툴바