我应该使用哪个字段来允许多个评论



我正在尝试向拍卖页面添加评论,但只允许每次拍卖添加一条评论我应该使用哪个模型字段来允许<strong]多条评论>

当我尝试在管理页面中添加多个评论时,页面会显示:

此拍卖的评论已存在。

models.py:

class Auction_listings(models.Model):
product_image = models.CharField(max_length=500)
product_title = models.CharField(max_length=40)
product_description = models.CharField(max_length=200)
product_category = models.CharField(max_length=20, default="others")
product_price = models.FloatField() #IntegerField()
username = models.CharField(max_length=64)
post_date = models.DateField(auto_now_add=True)
def __str__(self):
return f"{self.product_title}"

class Bids(models.Model):
auction = models.OneToOneField(Auction_listings, primary_key=True, on_delete=models.CASCADE)
username = models.CharField(max_length=64)
is_closed = models.BooleanField(default=False)
bid_value = models.FloatField()

def __str__(self):
return f"by {self.username} in {self.auction}: {self.bid_value}"

class Comments(models.Model):
auction = models.OneToOneField(Auction_listings, primary_key=True, on_delete=models.CASCADE)
username = models.CharField(max_length=64)
content = models.CharField(max_length=150)
date = models.DateField(auto_now_add=True)
def __str__(self):
return f"by {self.username} in {self.auction} on {self.date}"

感谢您的高级

当您使用OneToOne字段时,您将把一条评论连接到一个拍卖(一对一(。对于每次拍卖超过一条评论,你应该使用这样的外键字段:

class Comments(models.Model):
auction = models.ForeignKey(Auction_listings, on_delete=models.CASCADE)
username = models.CharField(max_length=64)
content = models.CharField(max_length=150)
date = models.DateField(auto_now_add=True)
def __str__(self):
return f"by {self.username} in {self.auction} on {self.date}"

最新更新