2015-10-20 321 views
3

有两个众所周知的用于创建树结构的Django包:django-treebearddjango-mptt。最近Django CMS开始使用django-treebeard而不是django-mptt。 Wagtail CMS也使用django-treebeard。django-treebeard比django-mptt有什么优势?

是什么让django-treebeard比django-mptt更可取的选择?

+1

可能是http://stackoverflow.com/questions/1682318/django-treebeard-what-are-differences-between-al-ns-mpl的副本 –

回答

7

主要区别在于SQL树实现的选择。

django-mptt使用嵌套集,读取速度快,写入速度慢。

Treebeard提供嵌套集以及邻接列表(快速写入,慢速读取)和物化路径(快速读取,快速写入)。

还有其他区别。 django-mptt拥有更好的API和更好的文档。