我正在使用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'
似乎它不会让我对递归的“外键”进行排序。谁能解释一下呢。有没有解决的办法?可能有多个级别的类别和子类别,但表中不会定义循环引用。
答案 0 :(得分:2)
此changeset
表示您的问题已在您正在使用的django版本中修复。它是changeset
的后端。
这些门票中讨论了这个问题:
您可能想要检查您的django是否包含已修补的代码。