擅长:python、mysql、java
<p>根据<a href="https://docs.djangoproject.com/en/3.0/ref/forms/fields/#fields-which-handle-relationships" rel="nofollow noreferrer">the documentation</a>限制ModelChoiceFields查询集的正确方法如下所示</p>
<pre><code># in your form
class ListDataForm(forms.Form):
message = forms.CharField(widget=forms.Textarea)
listdata = forms.ModelChoiceField(queryset=List.objects.all())
def __init__(self, *args, user=None, **kwargs):
super().__init__(*args, **kwargs)
if user:
listdata = self.fields['listdata']
listdata.queryset = listdata.queryset.filter(author=user)
# in your view
...
form = ListDataForm(data, ..., user=request.user)
</code></pre>