Software Workshop

프로젝트 뼈대 잡기

django-admin.py startproject mysite

서버 실행하기

cd mysite
./manage.py runserver

앱 시작하기

./manage.py startapp polls

모델 변경

모델이 변경되었을 때 이전을 준비하는 작업

./manage.py makemigrations polls

Django에게 모델에 변경이 발생했다는 사실을 알림

변경 사항을 DB에 반영하기 위해 필요한 계획을 SQL문장으로 출력

./manage.py sqlmigrate polls 0001

0001은 버전

변경을 적용

./manage.py migrate

Troubleshooting

admin.py에서 모듈 import할 때 에러가 발생하면

File "/Users/terzeron/mysite/polls/admin.py", line 2, in from django.models import Choice

from django.models에서 django를 app 이름(polls)로 변경하면 됨

한글 인코딩 깨지는 문제

우선 python 버전이 2.x면 모델 정의에 __unicode__로, 3.x면 __str__로 메소드가 정의되어 있는지 확인하고, 그 함수 내부에서 한글을 포함한 필드가 출력에 사용되었다며 unicode()로 wrap할 것