https://github.com/pahkey/djangobook/tree/2-01
을 클론해온다.
django_workspace를 생성하고 해당 폴더에 클론해온 폴더를 넣는다.
또한 해당 폴더에서 pycharm 새로운 프로젝트를 만든다.
django_workspace에 들어가서
기존이 Power Shell이기에 cmd를 쳐서 커맨드 입력을 한다.
이제 클론해온 곳에 가면 manage.py가 있는데 해당 py를 실행
이때 config의 setting에서 allow host를 바꾸고 debug 부분을 False로 바꾸자
debug는 오류 메세지 출력의 유무다.
또 이제 https://github.com/pahkey/djangobook/tree/2-02
다음 강의안 설치 (참고로 브런치에 다 있다)
sqlite를 사용한다.
db를 설치하고
db랑 pybo/migrations를 삭제한다.
삭제하는 이유는 어떤 일이 발생하는 지를 파악하기 위함이다.
간단히 이주를 시키면 db화(파이썬에서 쿼리대신 사용하는 명령어가 실행) = orm 된다.
python manage.py makemigrations pybo #확인해보기
python manage.py migrate #이주시키기
이후 sqlite로 해당 db를 살펴보면 key 2개가 생성됐다.
shell 열고
from pybo.models import Question, Answer
from django.utils import timezone
q = Question(subject="""오늘 점심은""", content= '''참치?''', * create_date=timezone.now())
q.save()
q.id #출력은 1
q = Question(subject="""오늘 저녁은""", content= '''삼겹살?''', create_date=timezone.now())
q.save()
q.id #출력은 2
를 순서대로 하나하나 입력한다.
중간중간 sqlite로 db보면 question 테이블에 value가 추가된 것을 볼 수 있다.
또는 shell 내에서
Question.objects.all()
해당 코드 입력하기
exit()
다시 shell
python manage.py shell
from pybo.models import Question, Answer
from django.utils import timezone
Question.objects.all()#모두보기
Question.objects.filter(id=1)#다수 가능
Question.objects.get(id=1)#하나만 가져오기
#filter로 존재하지 않는 id=3을 호출하면 아무것도 안들어옴 오류는 없다.
#get으로 id=3을 호출하면 오류가 나온다.