django - order_with_respect_to递归外键

时间:2011-04-04 00:22:54

标签: django recursion key

我正在使用Django 1.2.3。我有一个代表类别和子类别的表。对于子类别,它只引用其自己的表中的“父”主键作为其父类。它看起来像这样:

class Category(models.Model):
    def __unicode__(self):
        return self.name
    class Meta:
        db_tablespace = 'Category'
        verbose_name = 'Category'
        verbose_name_plural = 'Categories'
        ordering = ['display_weight', 'name']
        order_with_respect_to = 'parent'
    name = models.CharField('Category Name', max_length=32)
    parent = models.ForeignKey('self', blank=True, null=True)
    display_weight = models.IntegerField('Display Weight', default=50)

当我尝试验证/同步此数据库时,出现以下错误:

  

AttributeError:'str'对象没有   属性'get_category_order'

似乎它不会让我对递归的“外键”进行排序。谁能解释一下呢。有没有解决的办法?可能有多个级别的类别和子类别,但表中不会定义循环引用。

1 个答案:

答案 0 :(得分:2)

changeset表示您的问题已在您正在使用的django版本中修复。它是changeset的后端。

这些门票中讨论了这个问题:

  

http://code.djangoproject.com/ticket/2740

     

http://code.djangoproject.com/ticket/13241

您可能想要检查您的django是否包含已修补的代码。