모델에서 choices 사용시 출력방법

2023. 4. 6. 09:41django

class PinHistTm(models.Model):

TEL_CHOICES = (
('1', 'SK'),
('2', 'KT'),
('3', 'LG'),
)
customer_mobile_info = models.CharField(max_length=1, choices=TEL_CHOICES, null=True, blank=True,
default='1', verbose_name='통신사')

 

통신사: {{ question.get_customer_mobile_info_display }}<br />

출력

통신사: SK

 

get_customer_mobile_info_display() 메서드는 이미 PinHistTm 모델에 내장되어 있습니다. 따라서, 추가 작업 없이 PinHistTm 모델에서 get_customer_mobile_info_display() 메서드를 사용할 수 있습니다.

get_<field>_display() 메서드는 Django의 내장 메서드 중 하나로, choices 옵션으로 정의된 필드의 현재 값을 나타내는 문자열 대신, 해당 선택지의 타이틀을 반환하는 메서드입니다. 따라서, customer_mobile_info 필드에 choices 옵션을 지정했으므로 get_customer_mobile_info_display() 메서드를 사용하여 해당 필드의 선택지 타이틀을 얻을 수 있습니다.