我正在建造大型mptt树。 我想插入所有节点和启动方法后重建整个树:如何在每次插入后重建django-mptt树?
for i in range(big_loop):
...
m.save() # Saving mptt object. Tree is rebuild.
some_mptt_model.tree.rebuild()
我怎样才能避免重建后树上的每个插入?
我发现在.save
方法只depracted关键字:
在早期版本中,MPTTModel.save()有一个原始关键字参数。如果 为真,则MPTT字段在保存期间不会更新。此 (无证)参数现在已被删除。
我不这么认为,至少就MPTT推移,你应该对插入右侧重建树索引的一部分每个插入后的项目。随着MPTT读取非常便宜,而更新非常昂贵。虽然不是循环右手的物品,但你可以一次更新他们的索引+2。 –