0

我有这样的层次结构:

Parent Cat
     Sub Cat
         Item
     Sub Cat
         Item
         Item
Parent Cat
...

拥有父类别的名称/实例,我想获取与父猫相关的所有项目。我目前正在使用使用 Django-MTPP 的 Django-Categories,但如果不自己构建 for 循环,我无法弄清楚如何做到这一点。认为这些软件包的全部意义在于我不必这样做。

我的模型看起来像:

class Item(models.Model):
    title = models.TextField() # `null` and `blank` are false by default
    category = models.ForeignKey('ProductCategory')
    price = ....

    def __unicode__(self):  # Python 3: def __str__(self):
        return self.title

from categories.models import CategoryBase

class ProductCategory(CategoryBase):

    class Meta:
        verbose_name_plural = 'simple categories'

我试过做:

parent_category = ProductCategory.objects.get(slug=parent_cat, parent=None)
items = parent_category.item_set.all()

但这不会产生任何结果。

4

1 回答 1

2

您应该过滤您的项目:

items = Item.objects.filter(category__parent=parent_category)

双倍分数用于遵循模型关系或使用比简单相等更复杂的查找。文档在这里

于 2013-08-30T14:51:38.273 回答