我有一個類別樹,與條目項目相關的類別。所以這是我的模型文件:在django-mptt中執行以下操作有什麼錯誤?
from django.db import models
import mptt
class Category(models.Model):
nombre=models.CharField(max_length=70)
padre=models.ForeignKey('self', blank=True, null=True)
def __unicode__(self):
return self.nombre
class Meta:
ordering = ['tree_id', 'lft']
# Create your models here.
class Item(models.Model):
category=models.ManyToManyField(Category)
try:
mptt.register(Category, order_insertion_by=['nombre'], parent_attr='padre')
except mptt.AlreadyRegistered:
pass
我使用ManyToManyField,因爲每個項目可以在多個類別。
現在,在我的應用程序中安裝'mptt'後。我想在shell下:
Category.tree.add_related_count(Category.tree.root_nodes(), Item,
'category', 'q_c', cumulative=True)
應返回一棵樹,並加載屬於每個節點上的一個節點項目的數量。這看起來像文檔中所述的django-mptt的標準功能。
但是,我得到一個錯誤。以下是跟蹤:
使用SVN的django-MPTT和在Ubuntu 9.1 1.1 Django的。
您的示例如下的文檔,但在文檔,它們具有類是一個外鍵,而不是一個多對多。 – 2010-02-05 00:48:53
是的,我注意到了......我將其作爲問題發佈,以查看創作者是否有任何答案。 我剛試過用ForeignKey,它工作(因爲表是空的,它返回[])。也許我所要求的還沒有實現? – Ezequiel 2010-02-05 16:59:02