Django中相当于Drupal的CCK和Views模块的应用?

5 投票
4 回答
1087 浏览
提问于 2025-04-16 00:49

有没有类似于Drupal的Views和CCK模块的Django应用?

我觉得Django比Drupal灵活多了,而且结构也更合理。不过,我认为Drupal的Views和CCK模块真的是太好用了。它们让网站管理员可以通过图形界面快速创建新的数据模型和查询,而不需要动代码。这些模块对于快速开发应用非常有帮助。你知道Django里有没有类似的应用吗?

4 个回答

1

我觉得没有什么东西能和这两个相比,而且这是有原因的。Django是一个框架,而Drupal是一个完整的内容管理系统(CMS)。Drupal的一个强大之处在于它处理内容的方式。每一条内容都是一个节点(node),它允许开发者制作模块来增强节点的功能。

Django也是一个很棒的工具,但它的优势在于开发的简便性,让你可以非常快速地创建应用程序。这毕竟是它的设计初衷。用Django来做类似CCK和Views的东西会比较困难,而且我觉得这样做也没有太大意义。我发现使用Django开发时,可以很快创建大部分CCK和视图相关的功能,借助Django模型和ORM(对象关系映射)。虽然你不能通过图形界面来完成这些,但这从来就不是Django的目标。它的管理界面也反映了这一点,主要是为了处理内容和CRUD(创建、读取、更新、删除)操作。我想这就是为什么Satchmo为商店创建了自己的设置系统的原因。

1

http://docs.djangoproject.com/en/dev/faq/general/#is-django-a-content-management-system-cms

...把Django和Drupal放在一起比较其实没什么意义,因为Django是用来创建像Drupal这样的东西的工具。

4

Django 是一个框架,这一点大家都知道。但如果你想找一些类似于 CCK 的功能,PINAX 是为 Python/Django 提供的,相当于 Drupal 中的模块,算是一种现成的模块,比如登录/密码检查、列表、输入输出,或者 CRUD(增删改查)等功能。不过,它并不是那种可以直接用单选按钮和复选框来编程的工具。你需要把自己的构件组合起来,还得动手写一些 Python 代码。我发现自己在 Drupal 上花了更多时间去加载额外的模块和主题调整,而不是在 Django 上搭建一个完整的网站,可能是因为我有很多库,写过好几次并随着时间改进,都是为了应对反复遇到的情况。我只关注新的或前沿的东西。两种方法都可以,只要你知道自己想要什么。一个硬道理是,如果你想要一个能吸引非程序员的内容管理系统(CMS),想要搭建出很棒的网站,你必须对 PHP/MySQL 和 CSS 有很好的掌握,这样反而有点违背了初衷。在法国,我们常说:“最好的工具就是你每天都在用的那个。”如果你对 Drupal 感到沮丧,可以学习 Django,同时也需要掌握 Drupal,这样你就能有能力自己写一个 Drupal 或其他 CMS,或许吧。祝你好运!

撰写回答