2017-08-11 54 views
0

我有我認爲是一個簡單的問題。我正在設計一個數據庫,我對此有疑問。Django數據庫設計 - 使用屬性或方法

這是模型

class DailyCash(models.Model): 
    # Relations 
    # Attributes - Mandatory 
    initial_cash = models.DecimalField(
     max_digits=10, 
     decimal_places=2, 
     verbose_name=_('initial cash'), 
    ) 
    daily_incomes = models.DecimalField(
     max_digits=10, 
     decimal_places=2, 
     verbose_name=_('daily incomes'), 
    ) 
    daily_expenses = models.DecimalField(
     max_digits=10, 
     decimal_places=2, 
     verbose_name=_('daily expenses'), 
    ) 
    next_initial_cash = models.DecimalField(
     max_digits=10, 
     decimal_places=2, 
     verbose_name=_('next initial cash'), 
    ) 
    # Attributes - Optional 
    # Object Manager 
    objects = managers.DailyCashManager() 
    # Custom Properties 
    # Methods 

    # Meta and String 
    class Meta: 
     verbose_name = _("Daily Cash") 
     verbose_name_plural = _("Daily Cash") 
     ordering = ('id') 

    def __str__(self): 
     pass 

好吧,我dobut是我需要計算每日的平衡,但我不知道,如果是更好的使用屬性爲這個值或使用性質是什麼最快的當每日現金超過3年或者其他類似的事情來使用每月餘額或年度或我需要的時候,將來使用什麼,未來什麼更好。

使用字段daily_balance並存儲在數據庫中的值,或每個需要它的

這樣

@property 
def daily_balance(self): 
    return self.initial_cash + self.daily_incomes - self.daily_expenses - self.next_initial_cash 

好時間計算此值,這就是我的懷疑使用屬性(法)或商店值直接在數據庫中。

謝謝!

回答