Skip to main content
 首页 » 编程设计

python之Django 中的整数域数学

2025年05月04日24pander-it

from django.db import models 
from django.contrib.auth.models import User 
 
class Product(models.Model): 
name = models.CharField(max_length = 127) 
description = models.TextField() 
code = models.CharField(max_length = 30) 
lot_no = models.CharField(max_length = 30) 
inventory = models.IntegerField() 
commited = models.IntegerField() 
available = models.IntegerField() 
reorder = models.IntegerField() 
created_date = models.DateField(auto_now_add = True) 
comment_user = models.ForeignKey(User, null=True) 
comment_txt = models.TextField() 
 
def __unicode__(self): 
    return self.code + " - " + self.name + " - " + self.lot_no + " - " + str(self.created_date) 
 
@property 
def available(self): 
    return self.inventory - self.commited 

当一个人输入库存数据并在 django 管理模板中提交时,我试图通过(库存 - self )计算可用。但我不确定如何。

谢谢, 乔恩

请您参考如下方法:

尝试覆盖模型上的 save 方法:

def save(self, *args, **kwargs): 
    "update number available on save" 
    self.available = self.inventory - self.committed 
 
    super(Product, self).save(*args, **kwargs) 

如果 self.available 变为负值,您还可以将逻辑放入其中,以执行某些操作。