2014-10-31 56 views
0

我想乘以“* 2”我的“股票”整数字段的内容,并将结果放入其他整数字段,称为“卡”,然后禁用最后一个字段的版本。Integerfield的乘积内容

我怎么能达到那个?

我的领域是:

class card(models.Model): 

    def thumbnail(self): 
     return '<a href="/media/%s"><img src="/media/%s" width=50px heigth=50px/></a>'%(self.imagen,self.imagen) 

    thumbnail.allow_tags = True 

    nombre = models.CharField(max_length=100) 
    descripcion = models.TextField(max_length=300) 
    status = models.BooleanField(default=True) 
    imagen = models.ImageField(upload_to=url, null=True, blank=True) 
     precio = models.DecimalField(max_digits=6, decimal_places=3, default=Decimal(0)) 
     stock = models.IntegerField(default=0)    
     categoria = models.ManyToManyField(categoryCard,null=True,blank=True)  
     cards = models.IntegerField(default=0) 

    def __unicode__(self): 
     return self.nombre 

谢谢!

回答

0

我会尝试覆盖卡类的save()方法。

喜欢的东西:

class card(models.Model): 
    ... 

    def save(): 
     if not self.pk: # It's a creation, not an update 
      self.cards = self.stock * 2 
      super(card, self).save(*args, **kwargs) 

PS:使用“一卡通”,而不是“卡”尊重类命名约定(非常有用的,特别是如果你有相同的名字^^变量)。

+0

太好了,谢谢!,即使如此,我还有最后一个问题,在将此命令添加后,我必须添加“cards = models.IntegerField(默认值= 0)”以反映此字段在我的管理员面板中,或者没有必要。再次感谢您= D – Jhonny 2014-10-31 00:45:58

+0

对不起,我从来没有使用管理面板:( – 2014-10-31 00:49:12

+0

好吧,所以我可以显示在模板.html乘以这个标记乘法的信息?{{card.cards}} – Jhonny 2014-10-31 00:57:50