2024-10-01 04:46:11 发布
网友
我当前遇到了为forms.Form重写__init__()的问题。在
forms.Form
__init__()
class ReportsMainForm(forms.Form): ---- #Some fields def __init__(self, *args, **kwargs): super(ReportsMainForm, self).__init__(*args, **kwargs)
这里的问题是,我的queryset没有更新。我错过了什么?在
queryset
尝试改变小部件的查询集(ehm。。。选择):
为什么?
检查代码(参见django.forms.model.ModelChoiceField),当在field小部件的选择上设置queryset时,也会更新(这很好):
但是选择是缓存在字段上的,所以它们总是一样的。。。在
我认为这是一个bug,因为在field init上有一个显式的选项“cache\u choices”,默认为False。在
这条线是错的
应该是
尝试改变小部件的查询集(ehm。。。选择):
^{1}$为什么?
检查代码(参见django.forms.model.ModelChoiceField),当在field小部件的选择上设置queryset时,也会更新(这很好):
但是选择是缓存在字段上的,所以它们总是一样的。。。在
我认为这是一个bug,因为在field init上有一个显式的选项“cache\u choices”,默认为False。在
这条线是错的
^{1}$应该是
^{pr2}$相关问题 更多 >
编程相关推荐