我自己的网站的Python CMS?

时间:2008-12-01 00:53:21

标签: python django content-management-system web-testing

我是一位成熟的网络和数据库开发人员,我有兴趣重新设计自己的网站。

我有以下内容目标:

  • 支持我正在写的一本书
  • 将我的博客移至我自己的网站(来自blogger.com)
  • 发布我的文章(比博客更持久的内容)
  • 举办轻量级论坛
  • 嵌入幻灯片共享和截屏视频

我有以下技术目标来实现我的网站:

  • 了解更多Python和Django
  • 利用Pinax或Django-CMS等CMS解决方案
  • 使用CSS框架,例如Blueprint或YUI
  • 我在Mac OS X平台上开发
  • 我很乐意在CLI中开发,但我想练习Eclipse或NetBeans
  • 我想在开发期间使用测试
  • 请不要使用Microsoft语言或工具

有关支持这些目标的技术选择的任何建议吗?

编辑:如果上述问题太不明确或一般,请道歉。我要求的是,如果有人有过做类似网站的经验,对于我列出的工具,框架或技术的推荐是什么?

  • 除了我列出的两个之外,还有其他Python CMS吗?例如。可能有一个很棒的Python解决方案,但它不是建立在Django之上。
  • 也许所有当前的Python CMS软件包都太“alpha”了,而且我最好从头开始编写自己的软件包?虽然我很乐意,但我宁愿利用现有的软件包。
  • 鉴于此类项目,您是否会部署一个内置(或插件)支持博客,论坛等的CMS,或者您更愿意设计一个更简单的网站并使用其他服务嵌入更复杂的内容管理,仅依靠您自己的网站作为哑代理或门户网站。例如。可以使用Google Gdata API重新发布Blogger.com内容。可以将重新品牌的Nabble.com档案嵌入任何网站,这可能比运行论坛本身更容易提供论坛/邮件列表功能。
  • 有时CMS包有自己的CSS集成,使用另一个CSS框架将是多余的,否则没有意义。是?否?
  • Eclipse或Netbeans中是否有Django插件?我知道NetBeans中的Rails开发有一个非常好的环境,我读过有些人希望Django有类似的东西,但我不知道这些愿望是否已经实现。
  • 目前用于Django应用程序的单元和功能测试的首选工具是什么?这些是与Eclipse还是Netbeans集成的?

7 个答案:

答案 0 :(得分:9)

  1. 还有其他Python CMS吗?是的,有。他们比Django好吗?从某种角度看,是的。你应该改变吗?不。学习Django,它与大多数人一样好或更好。

  2. 也许所有当前的Python CMS软件包都太“alpha”。一个令人震惊的声明,IMO。但是,如果你认为你可以通过各种方式做得更好,那就进入。然而,这是一项大量的工作,你的目标并不是说“做了大量的工作来发明另一个CMS框架。”

  3. 您是否会部署一个内置(或插件)支持博客,论坛等的CMS。我不完全明白这一点。有内容(即博客帖子,论坛帖子),还有一个网络应用程序(即一个带有论坛评论的博客网站)。它们是不同的野兽,Web应用程序依赖于CMS。 CMS(通常)可以处理任何类型的内容;因此,博客通常不被描述为“插件”,它们只是内容。也许你想要一个预先建立的博客内容模型或什么?不确定你的问题是什么。

    • 依靠您自己的网站[重新发布Blogger.com内容。很难知道在这说些什么。它符合您的目标,只需代理或重新命名即可。但它与您的其他目标不符,因为您不会学习很多Django,CMS或任何其他技术。由于您的第一个目标和技术列表不匹配,我不知道您打算做什么:学习Django或者处理您的书并移动您的博客。不确定你的问题是什么。
  4. 有时CMS软件包集成了自己的CSS,使用其他CSS框架将是多余的,否则就没有意义。正确。不确定你的问题是什么。

  5. Eclipse或Netbeans中是否有Django插件?这是“让我谷歌那个适合你”的问题吗? http://pydev.sourceforge.net/是Python的Eclipse插件。 http://wiki.netbeans.org/Python是有关Net Beans的Python插件的信息。 Django只是Python,所以特定于Django的插件并不是很有意义。 Komodo Edit知道Django模板语法,可以做一些语法高亮。那很酷。

  6. 目前首选的Django应用程序的单元和功能测试工具是什么? Python有单元测试工具。他们是Python的一部分。不属于IDE。 Django有单元测试工具。它们是Django的一部分 - 它只是Python - 不是IDE的一部分。您只需运行它们,它们就会生成发生的事情的文本日志。

答案 1 :(得分:5)

此处似乎没有人提及较早的CMS框架,例如Plone

引用Wikipedia

  

Plone是一个基于Zope应用服务器构建的免费开源内容管理系统。它适用于内部网站,也可以用作Internet上的服务器,扮演文档发布系统和群件协作工具等角色。

从1999年开始,最新版本是Plone 3.1.7,日期为2008年11月.Plone表现良好 - 该网站是currently listing由Plone提供支持的1420个网站。

状态更新2009年12月:版本3。3。2(2009年11月)是最新版本。 1904 sites are listed由Plone提供支持。

答案 2 :(得分:2)

这取决于您正在寻找什么样的工具。

至于编辑,如果你喜欢CLI的东西,那么emacs或vim是要走的路(我更喜欢emacs)。如果您选择emacs,那么您可能还想使用pymacs进行自定义(因为您已经熟悉了python)。如果你想要一些类似intellisense的功能,那么eclipse是一个很好的方法,但我应该警告你:python可能是一种棘手的语言来做那种东西。因此,它可能不是你习惯使用其他语言的东西。同样,你可以给pydev一个镜头。

我还建议您使用trac查看故障单,查看来源以及使用buildbot持续集成服务器。

pylintbicycle repair man等工具也很有用。

答案 3 :(得分:2)

如果你想坚持使用Python,我认为Django是你最好的选择。开箱即用的管理员界面将为您节省批次时间。除非你打算按原样使用它,否则我会避免使用Plone,这似乎并非如此。如果我们要做出严肃的修改,你最好在Zope2中构建一些东西。根据您的描述,听起来真的是最好的平台是Wordpress。它是开源的,但基于PHP。即使它不是用Python构建你可能想看看它,因为它是一个优秀的发布平台,博客工具。无论如何,你总能混​​合2。我有一个在WordPress上运行的博客和在Zope2中构建的自定义扑克网站。我在子域上有Zope的东西,并运行一个cron作业,每隔几分钟从Wordpress抓取页眉和页脚文件。

答案 4 :(得分:1)

你们都准备好了,就这么做吧 阅读django教程以开始(如果你还没有) 我不知道关于django或python的一切,我只是保留我身边的参考文献。

答案 5 :(得分:1)

结帐django-blocks。有多语言菜单,Flatpages甚至有一个简单的购物车!!

答案 6 :(得分:1)

Web2Py看起来不错,但我对此没有任何经验。