我创建了一个带有选择字段调用membersid
的表单,该表单将在选项中显示名称。
我的问题是:
如何显示对象的name
,但value
显示对象的id
?
forms.py
membersid = forms.ModelChoiceField(queryset=Member.objects.values_list('id',flat=True),required=True)
我已经尝试过了,但是得到的值和显示名称是id。
我已经检查了代码,选项列表如下:
<select name="membersid" class="select form-control" required="" id="id_membersid">
<option value="" selected="">---------</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="21">21</option>
<option value="82">82</option>
</select>
我的期望选项列表:
<select name="membersid" class="select form-control" required="" id="id_membersid">
<option value="" selected="">---------</option>
<option value="15">ABC</option>
<option value="16">DEF</option>
<option value="17">GHI</option>
<option value="21">JKL</option>
<option value="82">MNO</option>
</select>
答案 0 :(得分:3)
forms.py
:
membersid = forms.ModelChoiceField(queryset=Member.objects.all(), required=True)
在您的models.py
中:
class Member(models.Model):
...
def __str__(self):
return self.name