我制作了两个模型,它们都具有相同的外键参考模型(usersold)和(currentuserbid)到用户模型(settings.AUTH_USER_MODEL)。
我已经填写了 AuctionBids models.currentuserbid 的数据。当我尝试在 view.py 中的 AuctionListing 模型中引用它并将其设置为相同的值时,它不会被保存。
我也试过,listing.sold = User.objects.get(id=listing.bid.currentuserbid.id)
非常感谢!
Models.py
class AuctionListing(models.Model):
title = models.CharField(max_length=64)
description = models.TextField()
image = models.TextField()
bid = models.ForeignKey(AuctionBids, on_delete=models.CASCADE, related_name="auctionbidding", null=True)
usersold = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, related_name="auctionsold",null=True)
class AuctionBids(models.Model):
currentBid = models.IntegerField()
currentuserbid = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE,related_name="currentuserbid",null=True)
Views.py
listing = AuctionListing.objects.get(pk=id)
listing.sold = listing.bid.currentuserbid
listing.save()
答案 0 :(得分:0)
问题在于你引用外键的方式 为了获得与 AuctionListing 相关的出价,您可以使用:
listing = AuctionListing.objects.get(pk=id) 出价=listing.bid_set 使用本文档了解 django 中的外键引用 https://docs.djangoproject.com/en/3.2/ref/models/relations/