Django模型formset问题

时间:2009-12-29 17:52:58

标签: django django-models

你如何在Django中使用模型formset?当你这样做时:

from django.forms.models import modelformset_factory
OrderFormset = modelformset_factory(Order)
formset = OrderFormset()

formset包含来自DB的所有订单...

如何将它们限制为例如profile.orders(Profila与FK连接到订单)?

提前致谢, 艾格。

3 个答案:

答案 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())