数学函数以及标志

时间:2010-01-21 18:49:08

标签: python django-admin

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)

我想知道如何能够拥有一个数学函数,以便可用=库存 - 这样当有人输入库存值并进行评估时,它会减去2并将该值放入可用状态。如果重新订购是库存 - 可用< =可用,它将标记为红色文本框或类似的东西。

谢谢

2 个答案:

答案 0 :(得分:0)

我不明白你的最后一句话,但对于其余部分,在admin list_display中显示一个计算字段很简单 - 只需在模型或管理员上创建一个方法。在您的情况下,最简单的方法是删除现有的“可用”字段并使用标记为属性的模型方法。

@property
def available(self):
    return self.inventory - self.committed

答案 1 :(得分:0)

例如,如果重新排序是< =可用,那么重新排序的整数字段会显示为红色标记,表示您需要重新排序或者某种类型。