바뀜

3 바이트 제거됨 ,  2021년 5월 11일 (화) 18:12
34번째 줄: 34번째 줄:  
애플리케이션 디렉토리의 model.py에서 정의한다.<syntaxhighlight lang="python">
 
애플리케이션 디렉토리의 model.py에서 정의한다.<syntaxhighlight lang="python">
 
class 모델명(models.Model): #이게 하나의 테이블이 된다.
 
class 모델명(models.Model): #이게 하나의 테이블이 된다.
     속성=model.옵션(옵션)
+
     속성 = model.옵션(옵션)
 
</syntaxhighlight>
 
</syntaxhighlight>
 
===테이블 디자인하기===
 
===테이블 디자인하기===
58번째 줄: 58번째 줄:  
|}
 
|}
   −
== 관리자페이지 ==
+
=== DB반영 ===
 +
모델에 메서드가 추가되기만 했을 땐 실행할 필요 없다.
 +
{| class="wikitable"
 +
!과정
 +
!방법
 +
!비고
 +
|-
 +
|DB변경사항 반영
 +
|python manage.py makemigrations
 +
|새로운 테이블이 생긴 경우. DB 자체에 변형이 가해진다.
 +
|-
 +
|DB생성
 +
|python manage.py migrate
 +
|속성이 변한 경우. DB에 변경사항을 반영하라는 명령이다.
 +
|}
 +
 
 +
== 모델 변경 ==
 +
웹사이트를 서비스하는 중에도 모델의 형태를 바꿔야 할 때가 있다.
 +
 
 +
=== 방법 ===
 +
단순히 모델에 변형을 가한 이후 <code>makemigrations</code>과 <code>migrate</code>를 통해 DB를 변경해주어야 한다.
 +
 
 +
null=False 옵션을 사용한 경우, 이전에 입력됬던 값들을 어떻게 처리할지 묻는데, 묻는 말에 따라 해당 데이터를 기입하면 된다.(일반적으로 이전 데이터는 한가지 옵션으로 다 채운다.)
 +
 
 +
=== 수정하기 ===
 +
{| class="wikitable"
 +
!과정
 +
!설명
 +
|-
 +
|DB 수정
 +
|
 +
*새로운 테이블명이 생긴 경우, python manage.py makemigration을 기입해주고,
 +
*단순 변형이 가해진 경우 python manage.py migrate를 해준다.
 +
|-
 +
|
 +
|
 +
|}
 +
 
 +
==관리자페이지==
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
64번째 줄: 102번째 줄:  
!설명
 
!설명
 
!형태
 
!형태
!
   
|-
 
|-
 
|__str__
 
|__str__
75번째 줄: 112번째 줄:  
     return self.subject  # 객체의 속성 중 subject를 반환하여 보여준다.
 
     return self.subject  # 객체의 속성 중 subject를 반환하여 보여준다.
 
</syntaxhighlight>
 
</syntaxhighlight>
|
   
|-
 
|-
|
   
|
 
|
 
|
 
|
 
|
 
|
 
|-
 
|-
|
   
|
 
|
 
|
 
|
98번째 줄: 132번째 줄:  
admin.site.register(테이블1)
 
admin.site.register(테이블1)
 
</syntaxhighlight>형태로 admin.py를 수정해주어야 한다.
 
</syntaxhighlight>형태로 admin.py를 수정해주어야 한다.
|}
  −
==DB반영==
  −
모델에 메서드가 추가되기만 했을 땐 실행할 필요 없다.
  −
{| class="wikitable"
  −
!과정
  −
!방법
  −
!비고
  −
|-
  −
|DB변경사항 반영
  −
|python manage.py makemigrations
  −
|새로운 테이블이 생긴 경우. DB 자체에 변형이 가해진다.
  −
|-
  −
|DB생성
  −
|python manage.py migrate
  −
|속성이 변한 경우. DB에 변경사항을 반영하라는 명령이다.
  −
|}
  −
  −
== 모델 변경 ==
  −
웹사이트를 서비스하는 중에도 모델의 형태를 바꿔야 할 때가 있다.
  −
  −
=== 방법 ===
  −
단순히 모델에 변형을 가한 이후 <code>makemigrations</code>과 <code>migrate</code>를 통해 DB를 변경해주어야 한다.
  −
  −
null=False 옵션을 사용한 경우, 이전에 입력됬던 값들을 어떻게 처리할지 묻는데, 묻는 말에 따라 해당 데이터를 기입하면 된다.(일반적으로 이전 데이터는 한가지 옵션으로 다 채운다.)
  −
  −
=== 수정하기 ===
  −
{| class="wikitable"
  −
!과정
  −
!설명
  −
|-
  −
|DB 수정
  −
|
  −
*새로운 테이블명이 생긴 경우, python manage.py makemigration을 기입해주고,
  −
*단순 변형이 가해진 경우 python manage.py migrate를 해준다.
  −
|-
  −
|
  −
|
   
|}
 
|}