我有两个模型的inlineformset以下视图:
表单集
LineFormSet = inlineformset_factory(Orders, LineitemInfo,
can_delete=True,
exclude = ('ordernotes',))
edit order_edit视图适用于主/父窗体,但不显示子记录。我可以将记录添加到子表单中并保存,但是当我选择该记录时它们不显示(我单独检查了数据库)。
def order_edit(request, pk):
order = get_object_or_404(Orders, pk=pk)
if request.method == "POST":
form = OrderForm(request.POST, instance=order)
if form.is_valid():
order = form.save(commit=False)
lineitem_formset = LineFormSet(request.POST, instance=order)
if lineitem_formset.is_valid():
order.save()
lineitem_formset.save()
return redirect('order_list')
else:
form = OrderForm(instance=order)
lineitem_formset = LineFormSet(instance=Orders())
return render(request, "orders/order_edit.html", {"form": form, "lineitem_formset": lineitem_formset, })
我只是在子/详细信息表单上获取数据应显示的空白字段。我错过了什么? TIA
答案 0 :(得分:0)
尽管我讨厌回答我自己的问题,但我正在调用一个空的Order()模型的实例而不是填充模型的实例。所以:
lineitem_formset = LineFormSet(instance=Orders())
应该是:
lineitem_formset = LineFormSet(instance=order)