我最近对整个 Django 感到有些沮丧。似乎我无法完全控制任何事情。我爱死 Python,但我希望能够(并且免费)做一些简单的事情,比如将 css 类添加到自动生成的表单中。
我真正喜欢使用的一个 MVC 框架是 Grails (groovy)。它有一个 FANTASTIC 模板系统,它可以让你真正拥有你想要的完全控制。
但是,我对 Python 非常着迷。因此,我想为我的 Web 应用程序开发找到一些体面且功能强大的东西。
有什么建议么?
可能是铁塔?
我现在正在使用 Pylons。灵活性很棒。这完全是关于同类最佳而不是 Django 方式。它更倾向于定制应用程序开发,而不是基于内容的网站。你当然可以在里面做内容网站;它只是不是专门为他们设计的。
另一方面,你最终需要阅读大量不同的文档,在不同的地方,不同的质量,以了解所有组件。而关于 Django 的优点之一是对于所有核心组件,您只需阅读“the”文档。
不过,Mako(模板)+ SQLAlchemy(DB 和 ORM)的组合非常好。当我使用 Django 时,我用它们替换了它的模板和数据库系统(在此过程中放弃了它的一些集成功能),它们是 Pylons 的标准配置。Mako 允许您使用 Python 表达式,这很好,因为即使您应该将业务逻辑与设计分开,动态站点确实需要大量的显示逻辑,而且 Django 的模板标签使用起来很笨拙。SQLAlchemy 允许您在从原始 SQL 级别到面向对象的 ORM 级别的任何地方使用相同的数据模型。
我认为至少花时间阅读文档并完成 QuickWiki 教程是值得的。
Pylons 并不比 Django 简单得多,而且它似乎没有相同的社区。对于轻量级应用程序,我会推荐web.py。虽然有一点魔力,但感觉不像。你看到你所做的一切。有关许多其他想法,请参阅python 上的最新网络资源列表。
像将 CSS 类添加到 Django 表单字段这样简单的事情是 可能的。
在这里可能会有点跑题,“我希望能够(并且免费)做一些简单的事情,比如将 css 类添加到自动生成的表单中”可能不是权力的最佳指标(或缺乏权力)的框架。众所周知,表单生成很难以灵活的方式进行(参见http://blog.ianbicking.org/on-form-libraries.html),并且框架总是需要权衡易用性与支持高级使用 -案例。我之前在 Pylons 中使用过表单生成,并没有发现它比 Django 中的工作方式更好或更容易(但也不是更难)。