python - 选择什么web框架

标签 python django pylons pyramid turbogears2

<分区>

我来自 java 世界 (apache wicket),我的项目需要使用 python。

我听说过 Turbogear2 , Pyramid ( Pylons )或 Django并阅读一些关于它们的信息。 我的第一选择是构建在 Pylons 之上的 TurboGears2,工具已经打包,但是 也许有人作为一些建议。

我不需要像 wiki 或博客那样创建很多内容,而是代表和 授予对我数据库中某些对象的访问权限,然后构建一个 javascript 接口(interface) 处理这些数据。

我需要 Web 框架为我做什么:

  • 具有角色(管理员、用户、组...)的身份验证系统
  • 使用增强的 javascript 工具,例如 dojo在应用程序之外,但是 如果我可以在应用程序和 javascript 库之间共享组件,那就太好了。
  • 简单 AJAX : 必须在“onChange”中刷新组件(我不喜欢提交按钮)
  • 一个好的 ORM。不知道SQLAlchemy但这看起来不错,将对象映射到数据库/从数据库、数据库池……
  • 易于部署(来自 java 我认为没问题;))
  • 轻松向页面添加 css 或 js
  • 一个不会让我心烦意乱的框架 ;)
  • 良好的文档和/或良好的支持

  • 线程/多进程支持(有很多计算。其中一些占用大量内存,另一些占用 处理时间。所以我希望能够从应用程序中启动 yield 。但我认为更多的是关于 using a python library 与这个问题无关? )

谢谢

最佳答案

对我来说, Pyramid 中的 mako + sqlalchemy 是达成交易的关键。如果您从事一些不错的数据库工作,那么 SqlAlchemy 就是最好的选择。我也是 mako 模板的忠实粉丝。在我的书中,能够在 mako 本身中创建可重用的表示类型函数与尝试在最终尝试导入的 python 模块中做事相比是一个优势。

我真正想提的是,对于您的最后一个项目,您真的应该考虑使用消息队列和类似 Celery 的东西将这些东西分摊给外部 worker 。完成工作并更多地使用网络应用程序来提交/结果显示,而不是实际尝试将工作从您的网络应用程序中分离出来。

关于python - 选择什么web框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6692132/

相关文章:

python 具有共享变量和异步的多处理?

Python gzip - 提取.csv.gz 文件 - 内存错误

python - 我请求的页面不代表与BeautifulSoup4相同的结构

python - 在 PDF Django Weasyprint 中附加 img 文件

python - self.__class__ 的错误类继承?

python - 创建 zip 文件时出现嵌套目录

python - “str”对象不可调用 Django Rest Framework

python - 问题 php 到 django 简单循环增加

cookies - 在 Pylons 中处理 cookie 的好方法是什么?

Python 路线 - 我正在尝试设置格式扩展名,但失败