我有两个链接在一起的表,即Delivery表和Stock表。它们通过delivery_id链接在一起,作为Stock表中的外键。我的困境是我必须从交付表单到我的股票表格中获取新创建的ID。我该怎么做?
def delivery(request):
form = DeliveryForm(request.POST or None)
context = {"form": form}
if form.is_valid():
form.save()
context = {"message": "Success!"}
return HttpResponseRedirect('/post/')
else:
return render(request, 'inventorysystem/delivery.html', context)
def stock(request, delivery_id=id):
form = StockForm(request.POST or None)
context = {"form": form}
if form.is_valid():
form.save()
context = {"message": "Success!"}
return render(request,'inventorysystem/post.html', context)
答案 0 :(得分:1)
嗯,为了帮助您的代码,您应该已经发布了您的模型代码。但无论如何,要链接'您应该在代码中遵循以下步骤的模型:
此步骤即将创建一个引用交付模型的变量。
from YourApp.models import Delivery, Stock
q = Delivery(SomeField = 'Example', OtherField = 2)
现在,' q'持有您想要与Stock建立关系的对象。因此,下一步是在某个变量中实例化Stock,然后引用字段' delivery'在Stock模型中我们之前创建的交货对象。 (注意:模型库需要像这样的一个字段delivery = models.ForeignKey(delivery,on_delete = models.CASCADE))
z = Stock(SomeField = 'Example3', delivery=q)
那就是它。您可以使用django shell检查它是否有效,或者在数据库中手动检查它是否有效。 希望它能帮助你至少一点。