用于集成到现有站点的最佳Django'CMS'组件

时间:2008-11-19 19:04:55

标签: python django content-management-system

所以我有一个相对较大的(足够的代码,从头开始编写这个CMS组件比重写应用程序以适应CMS)更容易,我想添加基本的页面/菜单/媒体管理,我已经看到几个Django可插拔程序解决了这个问题,但许多似乎都是针对完整的CMS平台。

有没有人知道一个可以轻松与现有模板/视图集成的插件,并且仍然可以运行强大/全面的管理界面?

7 个答案:

答案 0 :(得分:25)

我已经与所有三个(以及更多)一起工作,它们都是为不同的用例IMHO而构建的。我同意这些是最好的选择。

djangopluggables.com上的网格比较当然可以更轻松地评估每一项。

django-cms 是功能最齐全的,您可以实际交给客户而不是不负责任的。尽管它具有集成其他应用程序的功能,但它没有FeinCMS的可扩展性/集成或django-page-cms的简单性。话虽如此,我认为这是Django最好的开源CMS。但是,它的文档有点缺乏。 更新 我被告知将应用程序集成到DjangoCMS 2.1中已得到改进。

FeinCMS - 是一套很棒的工具,可以将CMS功能组合到您自己的应用中。它根本不是“开箱即用”,这意味着您可以根据需要进行集成。它不想接管您的urls.py或控制您如何路由页面。它可能是Django中下一代真正可插拔应用程序的原型。 - 我们正在从django-page-cms转移到FeinCMS,因为我们的主要模式是大批量电子商务,而且我想要集成的自定义内容类型不是博客或flash。良好的文档和支持。

Django-page-cms - 如果您想在主要应用程序周围找到一些“关于我们”页面,那就太棒了。它的菜单系统不是真正的层次结构,建立您的页面显示取决于您。但它非常简单,不引人注目,并且非常容易进入您的应用程序,并获得客户可以管理甚至为您自己管理的导航。它没有我所知道的文档,但你真的不需要任何文档。阅读代码,您将在30分钟或更短的时间内完成所有操作。

更新

Mezzanine - 这是一个设计精良的CMS,我最终为我的大部分客户工作安顿下来,主要是因为它有一个集成的电子商务部分。但除此之外,它还具有非常可扩展的页面模型,以及客户可能愿意使用的自定义管理界面。它还拥有最好的“开箱即用”体验,即您可以使用一个命令创建一个完整的站点。

答案 1 :(得分:7)

如果您不一定想要一个具有固定功能集的完成的CMS,而是希望在Django之上构建您自己的CMS的工具,我建议您查看FeinCMS。它遵循工具包哲学,而不是试图解决所有问题,而且(通常)也没有这样做。

http://github.com/matthiask/feincms/tree/master

免责声明:这是我的心血结晶,也是为了满足客户需求而尝试定制另一个CMS的过多令人沮丧的经历的结果。

答案 2 :(得分:5)

还有一个非常好的:

Django CMS page

答案 3 :(得分:4)

如果您需要更多功能,那么简单的django-page-cms只需检查django-blocks(http://code.google.com/p/django-blocks/)。有多语言菜单,Flatpages甚至有一个简单的购物车!!

答案 4 :(得分:3)

Django wiki上有一个非常好的Django CMS应用程序概述!

http://code.djangoproject.com/wiki/CMSAppsComparison

答案 5 :(得分:2)

请参阅django-plugables网站,列出的Django CMS组件很少(有些看起来非常好)。

答案 6 :(得分:1)

我在整合django-cms方面取得了成功。只需将它包含在urlconf的末尾,它就不会干扰。 (当DEBUG=True

时,你将丢失漂亮的404页面

使用上下文处理器和自定义模板标签的各种组合,我已经能够完成我所需要的一切,但如果您确实需要将内容插入到您自己的视图中,那应该是很容易。 (也许使用缺少所有包装器html的模板调用cms.views.render_page()?)