【发布时间】:2021-01-30 09:49:25
【问题描述】:
我有 2 个模型,“Listing”和“Bid”
出价:
# bids and bidder
class Bid(models.Model):
bid = models.IntegerField(default=10) #default soll durch user gesetzt werden
# Foreign Keys
bidder = models.ForeignKey(User, on_delete=models.CASCADE, related_name="bids")
listing = models.ForeignKey(Listing, on_delete=models.CASCADE, related_name="bids")
上市:
# all information related to a listing
class Listing(models.Model):
creation_date = models.DateTimeField(auto_now_add=True, null=True)
title = models.CharField(max_length=100, null=True)
description = models.CharField(max_length=100)
image = models.URLField(max_length=200, default="https://user-images.githubusercontent.com/24848110/33519396-7e56363c-d79d-11e7-969b-09782f5ccbab.png")
bid = models.IntegerField(default=10)
auction_open = models.BooleanField(default=True)
# Foreign Keys
author = models.ForeignKey(User, on_delete=models.CASCADE, related_name="listings")
place_bid():
def place_bid(request, listing_id):
bidder = request.user
bid = request.POST.get("bid")
listing_entry = Listing.objects.get(pk=listing_id)
bid_entry = Bid(listing=listing_entry, bid=bid, bidder=bidder)
bid_entry.save()
listing_entry.bid = bid_entry
listing_entry.save()
return;
在函数“place_bid()”中,我想创建一个新的“投标”实例,该实例使用外键引用已经存在的“列表”实例。
问题的出现是因为我接下来要执行的操作:我想更改刚刚引用的相同“列表”实例,我想将该列表对象的“投标”对象替换为我刚刚提到的那个“投标”对象已创建。
你能帮帮我吗:)
【问题讨论】:
标签: python django django-models cs50