3

django-mpttバージョン(0,5、'+ dev')を使用しました

私のモデルは次のようになります。

class Comment(MPTTModel):
    content = models.CharField(max_length = 300)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='child')

    class MPTTMeta:
        order_insertion_by = ['-creation_time']

ここで、コメントモデルのメタを変更します。

class MPTTMeta:
        order_insertion_by = ['creation_time']

次に、djangoシェルの下でツリーを再構築し、続いてこれを再構築します

models.comment.tree.rebuild()

ただし、次のようにスローされます。 AttributeError: type object 'Comment' has no attribute 'tree'

それのどこが悪いんだい?django-mpttでツリーを再構築する方法は?

ありがとう!

4

1 に答える 1

4

やってみました:

Comment.objects.rebuild()

はで定義されrebuild関数だからですTreeManager class

あなたが参照したSOの記事では、彼がカスタムマネージャーをtree属性に設定したと思います。しかし、あなたはそうではなく、したがってobjects属性にあります。

モデルマネージャーに精通していますか?

于 2012-09-08T18:24:16.653 に答える