아래의 choicefield에 대한 기존 valuelistqueryset에 빈 선택 값을 추가해야합니다. Django similat 내 양식은 modelchoicefield("-------------")
입니다. 아무도 이것으로 나를 도울 수 있습니까?django choicefield에 대한 기존 valuelistqueryset에 빈 선택을 추가해야합니다.
hardness = forms.ModelChoiceField(queryset=Description.objects.filter(variable="hardness", paradigm='206209').values_list('dvalue', flat=True).distinct().order_by('dvalue'))
@jghyllebert 답장을 보내 주셔서 감사합니다. 하지만이 경우에는 modelchoicefield를 choicefield로 변환해야합니다. 그리고 choicefield에 대한 해결책이 필요합니다. 미안해. 미안. 선택 필드에서 empty_label 및 empty_value를 시도했지만 양식이 잘못되었습니다.
rimplan = forms.ChoiceField (필수 = 거짓, 빈 값 = '---', 선택 사항 = 설명. 개체. 필터 (변수 = "rimplan", paradigm = '206209'). values_list ('dvalue', flat = True) .distinct(). order_by ('dvalue'))
따라서 완벽하게 작동하는이 솔루션을 구현했습니다.
EXTSURCOLOR_DESCRIPTIONS = Description.objects.filter (변수 = "exteriorsurfacecolor"패러다임 = '206209') EXTSURCOLOR_CHOICES = ('' '---')] EXTSURCOLOR_CHOICES.extend (EXTSURCOLOR_DESCRIPTIONS.values_list ("dvalue" , "dvalue"). distinct(). order_by ('dvalue')) exteriorsurfacecolor = forms.ChoiceField (choices = EXTSURCOLOR_CHOICES)
더 나은 해결책이 있는지 알고 싶었습니다.
'required = False'를 설정하면 표시 될 빈 값이 있습니까? 말 그대로 쿼리 세트에 삽입 할 수는 없지만 필드에 제공된 선택 항목에 추가합니다. –