gpt4 book ai didi

django - 如何在 Django 中将列表项插入数据库?

转载 作者:行者123 更新时间:2023-12-04 15:03:54 24 4
gpt4 key购买 nike

这是我的模板:

{% for pr in productlist %}

<ul>
<li>{{ pr.productid }} <input type="hidden" id="prid" name="mylist" value="{{ pr.productid }} "></li>
<li>{{ pr.productname }} <input type="hidden" id="prname" name="mylist" value="{{ pr.productname }}"></li>
<li><input type="number" name="mylist" id="prqty"/></li>
</ul>

{% endfor %}

我得到 View 中的项目列表:pd = request.POST.getlist("mylist") 结果是:

 1
product1
23

2
product2
44

3
product3
18

完整的 View 是这样的:

def post(self, request):
if request.user.is_authenticated:

pd = request.POST.getlist("mylist")

#invoice
invoice = models.Sellinvoice.objects.create(
type = "5",
date = datetime.datetime.now()
)

#invoiceItems
for item in pd:
qty = 1
models.Sellinvoiceitems (
productid = <<-- problem,
productname = <<-- problem,
totalnumber = <<-- problem,
sellinvoice = invoice,
stockid = stock
).save()

invoice.save()

我的问题是如何使用 for each 保存上面列表中的所有项目?

最佳答案

您可以枚举三个 block :

pd = request.POST.getlist('mylist') 
<b>pdi = iter(pd)</b>
for pid, pname, ptotal, __ in <b>zip(pdi, pdi, pdi, pdi)</b>:
models.Sellinvoiceitems.objects.create(
productid=pid
productname=pname,
totalnumber=ptotal,
sellinvoice = invoice,
stockid = stock
)

话虽如此,我还是建议不要自己处理POST参数。您可以使用 FormSet for that [Django-doc] .

关于django - 如何在 Django 中将列表项插入数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66496483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com