【发布时间】:2020-10-29 11:16:56
【问题描述】:
我的问题建立在这篇文章How to pass data between django views 之上。我正在尝试做类似的事情,即将视图 1 中输入的数据用于视图 2。
然而,挑战在于使用表单集,我需要访问多行数据输入,而不仅仅是值。我不知道如何实现这一点
这是我目前所拥有的: 视图 1:
def New_Sales(request):
#context = {}
form = modelformset_factory(historical_recent_data, fields=('Id', 'Date','Quantity', 'NetAmount', 'customer_name'))
if request.method == 'GET':
formset = form(queryset= historical_recent_data.objects.none())
#blank_form = formset.empty_form
elif request.method == 'POST':
formset = form(request.POST)
#blank_form = formset.empty_form
if formset.is_valid():
request.session['sale'] = request.POST['sale']
for check_form in formset:
check_form.save()
quantity = check_form.cleaned_data.get('Quantity')
id = check_form.cleaned_data.get('Id')
update = replenishment.objects.filter(Id = id).update(StockOnHand = F('StockOnHand') - quantity)
update2 = Item2.objects.filter(reference = id).update(stock_reel = F('stock_reel') - quantity)
return redirect('/dash22.html')
return render(request, 'new_sale.html', {'formset':formset})
并查看 2:
def invoice_view(request):
request = request.session.get('sale'))
#... i need to get each row of the formset from the above view
#and I am stuck!!
我希望有人能提供解决方案,我在 django doc 中找不到任何关于此的内容。
【问题讨论】: