django模型values查值参数问题。 django 和django-cms 的区别 知乎
django模型values查值参数问题。
cate字段其实是一个ForeignKey,这个外键指向名叫Cate的表,cateName是Cate表中的字段。如果直接使用cate,那么将按照Cate这个Model里的__unicode__()方法返回值。
django 和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开发一个网站的时候,大体上要遵循如下步骤:
使用标准的django-admin.py startproject建立标准Django项目
修改settings.py,INSTALLED_APPS增加cms、menu及其他的插件,TEMPLATE_CONTEXT_PROCESSORS、LANGUAGES、及其他CMS_开头的配置信息
使用manage.py syncdb生成数据库
开发模板和样式
manage.py runserver启动
然后才是使用后台系统构建目标网站结构
如果发现需求无法满足,可以去Django-cms网站查询插件库或者根据其扩展机制开发自己的plugin。这纯粹是在标准Django 应用(app)开发的基础上,外加一个与Django-cms的集成。
虽然Django-cms提供的开箱即用功能不多,但是它却提供了一个非常好的基础结构,让开发人员可以快速构建产品。所以从这个角度来说称其为enhanced-django似乎更合适。