바뀜

1,065 바이트 추가됨 ,  2021년 6월 22일 (화) 12:36
새 문서: == 개요 == 무언가를 입력할 때 자유롭게 입력하는 게 아닌, 선택에 제약을 주고자 할 때 사용하는 기능. 기본적으로 <code>ChoiceField</code> 는...
== 개요 ==
무언가를 입력할 때 자유롭게 입력하는 게 아닌, 선택에 제약을 주고자 할 때 사용하는 기능.

기본적으로 <code>ChoiceField</code> 는 따로 없기때문에 CharField에서 옵션을 사용하는 방식으로 구현한다.

== 정의 ==
<syntaxhighlight lang="python">
from django.db import models

class 모델명(models.Model): # 이게 하나의 테이블이 된다.
선택지 = ( # 이중튜플로 선택지를지정한다.
('DB에저장되는 내용1', '폼 등에서 표시하는값1'),
('DB에저장되는 내용2', '폼 등에서 표시하는값'2),
...
)
선택속성 = models.CharField(choices=선택지, max_length=5, blank=False) # 옵션은 알아서.
</syntaxhighlight>

=== 탬플릿에서 출력 ===
<nowiki>{{모델.속성}}</nowiki> 이 형태로 쓰면 DB에 기록된 형태의 데이터를 보여주고,

<nowiki>{{모델.get_속성명_display}}</nowiki>로 쓰면 사용자에게 보여지는 형태의 데이터를 보여준다.
[[분류:장고 모델]]