【发布时间】:2015-08-28 08:54:40
【问题描述】:
我在测试中使用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、rght和level提供了随机值,这些是必填字段,但应该由MPTT处理。
有没有办法告诉模特妈妈根本不要填写这些字段?还是这些字段的默认值不会破坏 MPTT 的保存算法?
【问题讨论】:
标签: python django django-testing django-mptt model-mommy