Limit values in the modelformset field

为君一笑 提交于 2019-12-02 10:17:38

You don't need any kind of custom forms. You can change the queryset of category field as:

IngrFormSet = modelformset_factory(Ingredient, extra=1, fields=('name', 'category'))
IngrFormSet.form.base_fields['category'].queryset = Category.objects.filter(user__id=request.user.id)
Category.objects.filter(user=request.user)

returns a list object for the initial value in your form which makes little sense.

Try instead

Category.objects.get(user=request.user)

or

Category.objects.filter(user=request.user)[0]
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!