假设我需要过滤多选框中可用的选项。Django表单和查询集
在我看来,我有:
class ArticleCheckbox(forms.ModelForm):
article= forms.ModelMultipleChoiceField(queryset=Article.objects.all(),required=False, widget=forms.CheckboxSelectMultiple)
class Meta:
model = Book
fields = ('m2m_article',)
。 在我看来,我将指派:
articleform = ArticleCheckbox()
articleform.fields["m2m_article"].queryset = Article.objects.filter(category = "Animals")
如何在视图中查询集的分配影响从类查询集(Article.object.all())? 覆盖?我不这么认为。
我想覆盖queryset。我该怎么做?
我需要在类构造完成后在视图中完成它。我需要不同的过滤器。上面的静态例子只是一个例子。我的代码我的代码过滤器是动态的。 – caliph
我可以想象的最佳解决方案是通过表单构建的过滤标准。但即使我将一个变量传递给模型表单,我也无法在构建之前使用它。这意味着我不能像你的例子那样动态设置过滤器。或者我错了? – caliph
我同意Sayse提出的关于向模型提供预先请求的方法。 –