django 中是否可以使用相关模型?
Are related models possible in django?
假设我有这样一个模型:
+-----------+--------+--------------+
| Name | Amount | Availability |
+-----------+--------+--------------+
| Milk | 100 | True |
+-----------+--------+--------------+
| Chocolate | 200 | False |
+-----------+--------+--------------+
| Honey | 450 | True |
+-----------+--------+--------------+
现在,在第二个模型中,我想要一个字段(也称为 'Amount'),它始终等于 Availability = True 的行数的总和。例如像这样:
+-----------+-----------------------------------------------+
| Inventory | Amount |
+-----------+-----------------------------------------------+
| Groceries | 550 #this is the field I want to be dependent |
+-----------+-----------------------------------------------+
这可能吗?或者有更好的方法吗?
这当然是可能的:我会推荐以下两件事之一:
按照一个人的评论执行此操作 "on the fly"。然后存储在 django 缓存机制中,以便它只偶尔计算一次(节省 database/computation 资源)。
创建一个进行求和的数据库视图;它将再次让数据库缓存 results/etc。以节省资源。
也就是说,我认为只有在非常繁忙的站点上的非常大的记录集上才需要 #1 或 2。
假设我有这样一个模型:
+-----------+--------+--------------+
| Name | Amount | Availability |
+-----------+--------+--------------+
| Milk | 100 | True |
+-----------+--------+--------------+
| Chocolate | 200 | False |
+-----------+--------+--------------+
| Honey | 450 | True |
+-----------+--------+--------------+
现在,在第二个模型中,我想要一个字段(也称为 'Amount'),它始终等于 Availability = True 的行数的总和。例如像这样:
+-----------+-----------------------------------------------+
| Inventory | Amount |
+-----------+-----------------------------------------------+
| Groceries | 550 #this is the field I want to be dependent |
+-----------+-----------------------------------------------+
这可能吗?或者有更好的方法吗?
这当然是可能的:我会推荐以下两件事之一:
按照一个人的评论执行此操作 "on the fly"。然后存储在 django 缓存机制中,以便它只偶尔计算一次(节省 database/computation 资源)。
创建一个进行求和的数据库视图;它将再次让数据库缓存 results/etc。以节省资源。
也就是说,我认为只有在非常繁忙的站点上的非常大的记录集上才需要 #1 或 2。