Python 如何从另一个外键引用模型Django更新外键
我制作了两个模型,它们都具有相同的外键引用模型(usersell)和(currentuserbid)到用户模型(settings.AUTH\u User\u model) 我已经填写了AuctionBids models.currentuserbid的数据。当我尝试引用它并在view.py的AuctionListing模型中将其设置为相同的值时,它不会被保存 我也试过了,listing.sell=User.objects.get(id=listing.bid.currentuserbid.id) 多谢各位Python 如何从另一个外键引用模型Django更新外键,python,django,django-models,django-templates,Python,Django,Django Models,Django Templates,我制作了两个模型,它们都具有相同的外键引用模型(usersell)和(currentuserbid)到用户模型(settings.AUTH\u User\u model) 我已经填写了AuctionBids models.currentuserbid的数据。当我尝试引用它并在view.py的AuctionListing模型中将其设置为相同的值时,它不会被保存 我也试过了,listing.sell=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)
问题在于引用外键的方式 为了获得与AuctionListing相关的出价,您可以使用: listing=AuctionListing.objects.get(pk=id) bid=listing.bid\u集合 使用本文档了解django中的外键引用
你的意思是
listing.usersell=listing.bid.currentuserbid
?字段名为“UserSeld”而不是“Seld”?@IainShelvington噢,谢谢你抓住了我的错误,你的正确答案。我应该意识到这一点。这回答了我的问题
Views.py
listing = AuctionListing.objects.get(pk=id)
listing.sold = listing.bid.currentuserbid
listing.save()