我用来在我的测试model_mommy
中创建实例MPTTModel
,但它似乎破坏了由 mptt 管理的树:
>>> parent = mommy.make(Category)
>>> child = mommy.make(Category, parent=parent)
>>> parent.get_descendants()
[]
不使用 model_mommy 也可以正常工作:
>>> parent = Category(name=u'Parent')
>>> parent.save()
>>> child = Category(name=u'Child', parent=parent)
>>> child.save()
>>> parent.get_descendants()
[<Category: Child>]
我怀疑问题在于 model_mommy 为 、 和 提供了随机值tree_id
,它们lft
是必填字段,但应该由 MPTT 处理。rght
level
有没有办法告诉模特妈妈根本不要填写这些字段?还是这些字段的默认值不会破坏 MPTT 的保存算法?