Математические функции, а также флаги - PullRequest
1 голос
/ 21 января 2010
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 и помещает это значение в доступное. Чем, если изменить порядок инвентаризации - доступно <= доступно, оно помечается как красное текстовое поле или что-то в этом роде. </p>

Спасибо

Ответы [ 2 ]

0 голосов
/ 22 января 2010
Например,

, если переупорядочение <= доступно, тогда целочисленное поле переупорядочения будет отображаться как красный флаг, указывающий, что вам нужно переупорядочить или что-то в этом роде. </p>

0 голосов
/ 21 января 2010

Я не понимаю ваше последнее предложение, но в остальном показать вычисляемое поле в admin list_display легко - просто создайте метод на модели или на администраторе. В вашем случае проще всего удалить существующее поле «Доступно» и использовать метод модели, помеченный как свойство.

@property
def available(self):
    return self.inventory - self.committed
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...