如何将current_amount的默认值指定为minimum_price?
class Auction(models.Model):
minimum_price = models.PositiveIntegerField()
.....
class Bid(models.Model):
product = models.ForeignKey(Auction, related_name='auction')
# i want to set this field's default to value of minimum_price from Auction model
current_amount = models.PositiveIntegerField(default=product__minimum_price)
#also tried default=product.minimum_price
我怎样才能做到这一点?
答案 0 :(得分:1)
一个解决方案是
class Bid(models.Model):
product = models.ForeignKey(Auction, related_name='auction')
current_amount = models.PositiveIntegerField()
def save(self, *args, **kwargs):
if not self.current_amount:
self.current_amount = self.product.minimum_price
super(Bid, self).save(*args, **kwargs)