我几乎已经try 了所有现有的Python web框架,我花了很长时间才意识到没有一个灵丹妙药的框架,每个框架都有自己的优点和缺点.我从Snakelets开始,非常享受能够在更低的级别控制几乎所有东西而不用大惊小怪的能力,但后来我发现了TurboGears,从那以后我就一直在使用它(1.x).像走秀和网络控制台这样的工具对我来说是无价的.

但是随着TurboGears2的问世,它带来了对WSGI的支持,在阅读了Django阵营和WSGI阵营之间的宗教辩论后,我真的在"doing it the right way"个人之间左右为难,比如学习WSGI,花宝贵的时间编写Django和其他全栈框架中已经存在的功能,而不是使用Django或其他可以为我做一切的高级框架.我能看到后者的不利之处是相当明显的:

  1. 我在这个过程中没有学到任何东西
  2. 如果我需要做任何更低层次的事,那将会是一件痛苦的事.
  3. 仅仅一个使用身份验证的基本站点所需的开销是疯狂的.(国际海事组织)

所以,我想我的问题是,哪一个是更好的 Select ,还是只是一个意见问题,如果Django以最小的麻烦实现了我想要的,我应该接受它并使用它(我想要身份验证和数据库的CRUD接口)?我try 了Werkzeug、Glashammer和friends,但AuthKit和Resoze吓跑了我,以及设置基本身份验证所涉及的步骤.我查看了挂架,但文档似乎缺乏,当引用身份验证或CRUD界面等简单功能时,各种wiki页面和文档似乎相互矛盾,对版本等有不同的攻击.


感谢S.Lott指出我说得不够清楚.我的问题是:以下哪一项在长期内是值得的,但在短期内不会痛苦(例如,某种折中方案,有人吗?)-学习WSGI,还是坚持"包含电池"的框架?如果是后者,我会很感激有人建议我是否应该再试一次Django,坚持使用TurboGears 1.x,还是try 其他框架.

此外,我也try 过CherryPy,但似乎找不到一个足够好的CRUD应用程序,我可以立即投入使用.

推荐答案

我建议再看看TG2.我认为人们没有注意到自上一个版本以来取得的一些进展.除了可用的不断增长的WSGI实用程序堆栈之外,还有相当多特定于TG2的项目需要考虑.以下是几个亮点:

TurboGears Administration System-使用声明性配置类可以完全自定义数据库的这个CRUD接口.它还与Dojo集成,为您提供无限可滚动的表格.服务器端验证也是自动的.管理界面使用RESTful URL和HTTP动词,这意味着可以很容易地使用行业标准以编程方式连接.

CrudRestController/RestController-TurboGears提供了一种 struct 化的方式来处理控制器中的服务.通过扩展我们的RestController,您就可以使用标准化的HTTP谓词.将Sprox与CrudRestController结合使用,您可以使用完全可自定义的自动生成表单将crud放在应用程序中的任何位置.

如果您单击这些链接,您将看到我们有一套新的用Shinx构建的文档,它比过go 的文档更广泛.

有了最好的web serverORMtemplate system(S)(自己 Select ),很容易理解为什么TG对于那些想要快速上手,并且随着网站的增长仍然具有可伸缩性的人来说是有意义的.

TurboGears通常被视为试图达到一个移动的目标,但我们在发布版本上是一致的,这意味着您不必担心在主干之外工作,以获得所需的最新功能.future :更多的TurboGears扩展将允许您的应用程序通过简单的粘贴命令来增加功能.

Django相关问答推荐

Django ORM Groupby

Django:不能在子函数中返回重定向异常.第一个功能继续

Django-表单(ModelForm)中的数据不保存在现有数据库中

Docker 中的 Django检测到更改...,正在重新加载错误

如何在 Django 模型中存储元组列表

在Django Rest Framework中按模型属性排序时如何避免重新计算?

如何将 select_related 应用于 Django 中的 m2m 关系的对象?

Django ORM __in 但不是精确的,包含不区分大小写的?

Django celery 页面给出 404

QuerySet对象在bulk_update中没有属性pk

EmailBackend 用于在 Django 中通过多个 SMTP 发送邮箱

Django基于类的视图上的success_url的反向抱怨循环导入

为 Django 模型生成非顺序 ID/PK

文档中的 Mongoengine creation_time 属性

用户组和权限

如何使用 django 发送 POST 请求?

有 Django List View 模型排序吗?

如何在 Django 中测试自定义模板标签?

获取 django 应用的绝对路径

在 django 中获取空查询集的类名