IT박스

Django App Tutorial에서 choice_set은 무엇입니까?

itboxs 2020. 7. 1. 08:17
반응형

Django App Tutorial에서 choice_set은 무엇입니까?


Django 튜토리얼에는 첫 번째 Django 앱 작성, 1 부이 줄이 있습니다 .

p.choice_set.create(choice='Not much', votes=0)

choice_set존재 는 어떻게 부름을 받는가?

choice부분은 Choice튜토리얼에서 사용되는 모델의 소문자 버전 이라고 생각 하지만 무엇 choice_set입니까? 정교하게 할 수 있습니까?

업데이트 : Ben 의 답변을 바탕 으로이 문서를 찾았습니다 : "뒤로"관계를 따르십시오 .


Choice각각과 관련이 있는 외래 키를 만들었습니다 Question.

따라서 각 필드에는 모델에서 선언 Choicequestion필드 가 명시 적으로 있습니다 .

Django의 ORM은 관계를 거꾸로 따라 가서 해당 모델에 대한 필드 가있는 모델 Questionfoo_setwhere 라는 각 인스턴스에서 필드를 자동으로 생성합니다 .FooForeignKey

choice_setA는 RelatedManager의 검색어 세트 만들 수있는 Choice받는 관련된 개체 Question예 인스턴스q.choice_set.all()

foo_setDjango가 자동으로 선택 하는 이름 지정이 마음에 들지 않거나 동일한 모델에 대해 둘 이상의 외래 키가 있고 구별 해야하는 경우에 related_name인수를 사용하여 자신의 재정의 이름을 선택할 수 있습니다 ForeignKey.

참고 URL : https://stackoverflow.com/questions/2048777/what-is-choice-set-on-the-django-app-tutorial

반응형