2016-03-01 56 views
1

在一家网上商店中,我使用django-mptt获得了具有多个级别的产品类别。我也有属于一个类别的产品。mptt以树形模型作为外键的不同模型实例的数量

现在我想以可视化的分类树是这样的:

all(18) 
- edible (10) 
-- food (4) 
-- drink (6) 
- inedible (8) 
-- wood (3) 
-- rock (5) 

其中范围的数字是每个类别的产品计数。

我能够可视化类别树。我也可以将产品数量放在类别名称后面,但我做这件事的方式似乎效率很低。我基本上在类别模型中有一个get_number_of_products()方法,它返回一个类别的产品数量。但是这需要每次都有一个新的数据库查询。

解决此问题的一种方法是使用缓存,因为我不会经常更改产品数量,但我更喜欢使用较少数据库查询来获取具有产品数量的树的方法。

回答

0

我的回答是连接到Django的奥斯卡,但你会发现它有用

{{ for tree category in tree_categories }}是一个范畴类,因此它可以通过

{{ tree_category.get_num_children }} 
让孩子们
相关问题