表格错误:
选择一个有效的选择.这种选择不是可用的选择之一.
代码:
self.fIElds['lead'] = forms.ModelChoiceFIEld(queryset = Pepole.objects.filter(poc__in = ('lead','sr.lead'))) self.fIElds['lead2'] = forms.ModelChoiceFIEld(queryset = Pepole.objects.filter(role__in = ('lead','sr.lead'))) choice_fIEld = self.fIElds['lead'] choice_fIEld.choices = List(choice_fIEld.choices) + [('None','None')] choice_fIEld = self.fIElds['lead2'] choice_fIEld.choices = List(choice_fIEld.choices) + [('None','None')]
我在这做错了吗?
解决方法 那不行.看看ModelChoiceFIEld的工作原理:try: key = self.to_fIEld_name or 'pk' value = self.queryset.get(**{key: value}) except self.queryset.model.DoesNotExist: raise ValIDationError(self.error_messages['invalID_choice']) return value
您无法随机添加内容.
请改用ChoiceFIEld并自定义处理数据.
class TestForm(forms.Form): mychoicefIEld = forms.ChoiceFIEld(choices=QS_CHOICES) def __init__(self,*args,**kwargs): super(TestForm,self).__init__(*args,**kwargs) self.fIElds['mychoicefIEld'].choices = \ List(self.fIElds['mychoicefIEld'].choices) + [('new stuff','new')] def clean_mychoicefIEld(self): data = self.cleaned_data.get('mychoicefIEld') if data in QS_CHOICES: try: data = MyModel.objects.get(ID=data) except MyModel.DoesNotExist: raise forms.ValIDationError('foo') return data总结
以上是内存溢出为你收集整理的表单ModelChoiceField查询集额外选择字段django表单全部内容,希望文章能够帮你解决表单ModelChoiceField查询集额外选择字段django表单所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)