在寻找具有选择参数的字段时,我似乎在Django中遇到问题。我没有得到字段名称,但我得到了数字有一些奇怪的原因。
我的forms.py
:
from django import forms
CONTRACT_TYPE_CHOICES = (
(1, 'Annual'),
(2, 'Ad-hoc'),
)
CONTRACT_STATUS_CHOICES = (
(1, 'Active'),
(2, 'In-Active'),
)
class ContractForm(forms.ModelForm):
contract_type = forms.ChoiceField(choices=CONTRACT_TYPE_CHOICES)
contract_status = forms.ChoiceField(choices=CONTRACT_STATUS_CHOICES)
class Meta:
model = Contract
在我的模板中。我有以下
{% for contracts in contracts_list %}
{{contracts.client_contract_number}}<br/>
{{contracts.contract_type}}<br/>
{{contracts.contract_status}}<br/>
{% endfor %}
他们都返回一个值。但contact_type
和contract_status
会返回数字。我不会让它返回数字而是名字。我该怎么做?
答案 0 :(得分:3)
选择kwarg的模型字段自动获得get_FIELD_NAME_display
方法。例如,您可以将其放在模板中:
{{ contracts.get_contract_type_display }}
{{ contracts.get_contract_status_display }}
请参阅documentation。
祝你好运, 贾斯汀