본문으로 바로가기

장고models, views, admin 관계를 이해해려고 노력해봤다. 그리고 프로젝트 할 때 필요한 db를 생각해보고 그 db를 어떻게 활용할지 생각해봤다 내일 직접 만들어보고 더 자세한 내용을 적을 예정이다.

apps/models.py

모델에서는 내가 어떤 데이터를 받을지 어떻게 받을지 생각하고 큰그림을 그리는 곳이라는 생각이 들었다.

이상적으로는 전체적인 프로젝트를 생각해서 테이블을 만들고 필요한 db정보를 정하고 프로그래밍 해야할 것 같다.

모델을 수정하려면 무조건 서버를 꺼야한다.

모델에 변경사항이 있다면 바로python manage.py makemigrations 와  python manage.py migrate 해줘야 한다.

 

views

def introduce(request):
    # case 1 row 생성 = 데이터 생성 접속시간 필드는 지알아서 해줌 필요없고
    access_log = Accesslog()
    access_log.location="introduce"
    access_log.save()
    return render(request, 'introduce.html')

views에서는 introduce 함수를 쓰고 매개변수에 request를 꼭 쓴다. view의 경우는 요청이 온 걸 처리하는 곳이자 과정이라고 이해했다.

 

admin

admin에 models 추가

from introduce.models import Accesslog

# Register your models here.
admin.site.register(Accesslog)

models가 바뀌면 무조건 admin 에게 보고해준다.

 

장고를 사용할 때 리스트가 아니라 딕셔너리 상태로 넘어오는 경우가 많다.

 

many to many

피자와 토핑 서로 여러개를 들고와 사용할 수 있다. =서로 많이 가질 수 있다.