Математические функции, а также флаги

1
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 и поместит это значение в доступное. Тогда, если переупорядочить инвентарь - доступно, <= доступно, оно будет обозначаться как красное текстовое поле или что-то в этом роде.

Спасибо

Теги:
django-admin

2 ответа

0

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

0

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

@property
def available(self):
    return self.inventory - self.committed
  • 0
    Я не понимаю, как это сделать, вы можете пойти более подробно?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню