python - 如何在 OPTION 和 VALUE OPTION e 选择中使用具有相同值的列表中的 ModelChoiceField?
问题描述
如何在 OPTION 和 VALUE OPTION e 选择中使用具有相同值的列表中的 ModelChoiceField?
我需要queryset返回来为选项的列表和VALUE选择相同的值
模型
class Produto(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
nome = models.CharField(max_length=255)
referencia = models.CharField(max_length=50)
def __str__(self):
return self.nome + ' - ' + self.referencia
形式
class FormItem(forms.Form):
produto = forms.ModelChoiceField(queryset=None, label='Produto', widget=forms.Select(attrs={'placeholder': 'Produto', 'class': 'input select2'}))
def __init__(self, *args, **kwargs):
super(FormFaturaItem, self).__init__(*args, **kwargs)
self.fields['produto'].queryset = Produto.objects.all()
表格结果
<select>
<option value="dd3e2aff-924d-4945-9929-3d37b81b3ebb">KIT MATERNIDADE - 9049</option>
</select>
预期结果
<select>
<option value="KIT MATERNIDADE - 9049">KIT MATERNIDADE - 9049</option>
</select>
解决方案
produto = forms.ChoiceField(choices=(), label='Produto', widget=forms.Select(attrs={'placeholder': 'Produto', 'class': 'input select2'}))
def __init__(self, *args, **kwargs):
super(FormItem, self).__init__(*args, **kwargs)
a = []
for i in Produto.objects.all():
a.append((i.nome, i.nome))
self.fields['produto'].choices = tuple(a)
推荐阅读
- azure-cosmosdb - 使用 readItems(queryString) 计算带有查询的项目
- python-3.x - simple-salesforce 批量更新未按预期工作
- reactjs - 退出 react-bootstrap 模式时如何阻止事件冒泡?
- r - 仅将 readr::type_convert 映射到特定列
- ruby-on-rails - Travis CI Ruby 以 1 退出
- python - 麻烦安装jupyter
- python - SimpleItk - 使用 12 位写入 DICOM 图像(BitsAllocated=16,BitsStored=12)
- c - CS50x - 过滤器更多
- vue.js - 如何提高大型 Vue 组件的性能
- nginx - GKE Nginx 入口 - 设置主机导致 400 不需要 SSL 证书