Django-cms简介

与其说Django-cms是一个内容管理系统,不如说其实一个基础的开发平台。与常规的cms不同,Django-cms并不是一个开箱即用的产品,也没有提供很多内置的模板和主题,让用户快速的搭建一个网站出来。相反,要想使用Django-cms要求用户必须熟悉Django,其搭建的的过程很"像"一个是用Django开发的过程。

本文根据一天的文档阅读心得总结而来。

从结构上来说Django-cms包含以下内容: 

1、一个基础框架:

  • 多站点支持——好吧,其实是Django的
  • 多语言支持。没个页面可以有不同语言的版本。
  • Page管理。后台可视化支持,包括Page结构和Page中插件(Plugin)的配置等
  • 可扩展的菜单系统
  • 集成/继承自Django的模板系统。增加placeholder。
  • 基于plugin的扩展机制——与Django应用(app)的集成。

2、一组插件

  • file
  • text
  • googlemap
  • twitter
  • flash
  • video

3、一组模板标签

  • show_menu
  • show_breadcrumb
  • show_submenu
  • placeholder
  • ......

4、其他

  • SEO支持
  • 虚拟根(soft root)
  • sitemap
  • (内容)版本历史记录功能
  • ...

从使用上来说,Django-cms的首要客户应该是程序员,而不是最终用户或设计师。这是由其部署过程决定的,在使用Django-cms开发一个网站的时候,大体上要遵循如下步骤:

  1. 使用标准的django-admin.py startproject建立标准Django项目
  2. 修改settings.py,INSTALLED_APPS增加cms、menu及其他的插件,TEMPLATE_CONTEXT_PROCESSORS、LANGUAGES、及其他CMS_开头的配置信息
  3. 使用manage.py syncdb生成数据库
  4. 开发模板和样式
  5. manage.py runserver启动
  6. 然后才是使用后台系统构建目标网站结构
  7. 如果发现需求无法满足,可以去Django-cms网站查询插件库或者根据其扩展机制开发自己的plugin。这纯粹是在标准Django 应用(app)开发的基础上,外加一个与Django-cms的集成。

虽然Django-cms提供的开箱即用功能不多,但是它却提供了一个非常好的基础结构,让开发人员可以快速构建产品。所以从这个角度来说称其为enhanced-django似乎更合适。

posted @ 2012-09-06 09:39  雨吁的嘘  阅读(5223)  评论(2编辑  收藏  举报