你如何在Django中使用模型formset?当你这样做时:
from django.forms.models import modelformset_factory
OrderFormset = modelformset_factory(Order)
formset = OrderFormset()
formset包含来自DB的所有订单...
如何将它们限制为例如profile.orders(Profila与FK连接到订单)?
提前致谢, 艾格。
答案 0 :(得分:6)
通过传递queryset参数
from django.forms.models import modelformset_factory
OrderFormset = modelformset_factory(Order)
formset = OrderFormset(queryset=Order.objects.filter(name="myorder"))
http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#using-a-custom-queryset
答案 1 :(得分:1)
听起来您想使用inline formsets。
内联表单集是一个小抽象 模型表单集顶部的图层。这些 简化使用的情况 通过外键的相关对象。
答案 2 :(得分:1)
czarchaic
做对了。我只是想根据你的需要进行修改:
from django.forms.models import modelformset_factory
OrderFormset = modelformset_factory(Order)
user_profile = request.user.get_profile()
formset = OrderFormset(queryset=user_profile.order_set.all())