【问题标题】:Python Webframework ConfusionPython Web 框架混乱
【发布时间】:2008-10-10 12:40:08
【问题描述】:

有人可以向我解释一下当前的 python webframworks 是如何组合在一起的吗?

我听说过的三个是 CherryPy、TurboGears 和 Pylons。但是我很困惑,因为 TurboGears 似乎使用 CherryPy 作为“控制器”(尽管 CherryPy 本身不是一个框架吗?),并且 TurbGears 2 将构建在 Pylons 之上(我认为这样做同样的事情?)。

【问题讨论】:

    标签: python pylons cherrypy web-frameworks turbogears


    【解决方案1】:

    当然还有更多。

    这是一个完整的列表和详细信息!

    Web Frameworks for Python

    以上链接摘录:

    流行的全栈框架

    Web 应用程序可以使用 基础 HTTP 应用程序的组合 服务器,一种存储机制,例如 数据库、模板引擎、请求 dispatcher,一个认证模块 和一个 AJAX 工具包。这些可以 单个组件或提供 一起在一个高级框架中。

    这些是最受欢迎的高级 构架。其中许多包括 WebComponents 上列出的组件 页面。

    Django (1.0 2008-09-03 发布) a 高级 Python Web 框架 鼓励快速发展和 简洁实用的设计

    Pylons (0.9.6.2 2008-05-28 发布) a 强调轻量级Web框架 灵活性和快速发展。它 结合了来自 Ruby、Python 和 Perl 的世界, 提供结构化但极其 灵活的 Python Web 框架。它是 也是最早的项目之一 利用新兴的 WSGI 标准, 这允许广泛的重用和 灵活性,但前提是您需要它。 Pylons 的目标是开箱即用 Web 开发快速、灵活、 简单的。 Pylons 建立在 Paste 之上 (见下文)。

    TurboGears (1.0.4.4 发布 2008-03-07) Web 的快速发展 你一直在寻找的巨型框架。 结合CherryPy、Kid、SQLObject 和 MochiKit。浏览网站后 签出:QuickStart Manual

    web2py(当前版本 1.43) 一切都在一个包装中,没有 依赖关系。开发、部署、 调试、测试、数据库 管理和维护 应用程序可以通过 提供网页界面。 web2py 没有 配置文件,不需要 安装,可以在U盘上运行。 web2py 使用 Python 作为模型, 视图和控制器,有一个 内置票务系统进行管理 错误,国际化 引擎,适用于 MySQL、PostgreSQL、 SQLite、甲骨文、MSSQL 和谷歌 App Engine 通过 ORM 抽象 层。 web2py 包括库 处理 HTML/XML、RSS、ATOM、CSV、RTF、 JSON、AJAX、XMLRPC、WIKI 标记。 生产就绪,有能力 上传/下载非常大的文件, 并且始终向后兼容。

    Grok(0.13 发布于 2008-06-23)是 基于现有的 Zope 3 库,但旨在提供一个 更容易的学习曲线和更敏捷 开发经验。它这样做 通过强调约定 过度配置和干燥(不要 重复你自己)。

    Zope (2.10.4 发布于 2007-07-04, 3.3.1 2007-01-14 发布,Zope 3.4.0c1 2008-01-31 发布)作为 Python Web 框架的鼻祖, Zope已经成长为一个家庭 多年来的框架。 Zope 1 是 1999 年发布。Zope 2 既是一个网络 框架和通用目的 应用服务器,今天是 主要用于 内容管理系统。 Zope 3 是 一个独立的框架和一个 相关图书馆的集合,其中 也包含在较新的版本中 Zope 2. 所有 Zope 框架 包括 ZODB,一个对象数据库 用于 Python。

    【讨论】:

      【解决方案2】:

      试试 web2py。它是点击式的(你甚至不需要安装 Python,它自带)。您使用 Web 界面进行开发,几乎可以在任何地方进行部署,包括 iPhone、Oracle 和 Google App Engine。在尝试 web2py 之前,请尝试安装一些其他 Python 框架,您会更加欣赏它。

      【讨论】:

        【解决方案3】:

        CherryPy 不是一个全栈 Web 框架(例如 Django),实际上它不是一个 Web 框架,而是一个 HTTP 框架。使用 CherryPy 编写 Web 应用程序很像用 Python 编写常规的面向对象应用程序。 此外,CherryPy 有自己的生产就绪 WSGI Web 服务器,它也可以用于使用其他框架编写的应用程序,因此围绕 CherryPy 作为框架感到困惑。

        【讨论】:

          【解决方案4】:

          如果您正在寻找从头到尾的解决方案,那么值得一提的是,该领域的领导者是 Django

          【讨论】:

          • @jpartogi 忍不住... LMAO!
          【解决方案5】:

          您是否尝试过 FastAPI。 它是一个现代、快速(高性能)的 Web 框架,用于基于标准 Python 类型提示使用 Python 3.6+ 构建 API。

          非常容易学习,功能强大且轻量级。 https://fastapi.tiangolo.com/

          我一直在使用我的应用程序,它似乎与 Flask 类似,但相当健壮。

          from fastapi import FastAPI
          
          app = FastAPI()
          
          
          @app.get("/")
          def read_root():
              return {"Hello": "World"}
          

          Some Video Tutorials can be found here

          here也可以找到很多帮助资料

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-05-22
            • 1970-01-01
            • 2017-07-11
            • 1970-01-01
            • 2018-08-26
            • 1970-01-01
            相关资源
            最近更新 更多