10

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

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

4

5 回答 5

15

当然还有更多。

这是一个全面的列表和详细信息!

Python 的 Web 框架

从上面的链接中提取:

流行的全栈框架

Web 应用程序可以使用基本 HTTP 应用程序服务器、数据库等存储机制、模板引擎、请求调度程序、身份验证模块和 AJAX 工具包的组合。这些可以是单独的组件,也可以在高级框架中一起提供。

这些是最流行的高级框架。其中许多包含 WebComponents 页面上列出的组件。

Django (1.0 Released 2008-09-03) 一个高级 Python Web 框架,鼓励快速开发和干净、实用的设计

Pylons(0.9.6.2 发布于 2008-05-28)一个轻量级的 Web 框架,强调灵活性和快速开发。它结合了 Ruby、Python 和 Perl 领域的最佳理念,提供了一个结构化但极其灵活的 Python Web 框架。它也是利用新兴 WSGI 标准的首批项目之一,该标准允许广泛的重用和灵活性,但前提是您需要它。开箱即用的 Pylons 旨在使 Web 开发快速、灵活和简单。Pylons 建立在 Paste 之上(见下文)。

TurboGears (1.0.4.4 发布于 2008-03-07) 您一直在寻找的快速 Web 开发巨型框架。结合了 CherryPy、Kid、SQLObject 和 MochiKit。查看网站后查看:快速入门手册

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

Grok(0.13 于 2008-06-23 发布)基于现有的 Zope 3 库构建,但旨在提供更轻松的学习曲线和更敏捷的开发体验。它通过强调约定而不是配置和 DRY(不要重复自己)来做到这一点。

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 既是 Web 框架又是通用应用程序服务器,如今它主要由 ContentManagementSystems 使用。Zope 3 既是一个独立的框架,也是相关库的集合,这些库也包含在 Zope 2 的较新版本中。所有的 Zope 框架都包括 ZODB,一个 Python 的对象数据库。

于 2008-10-10T12:43:02.063 回答
7

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

于 2008-10-10T15:15:33.033 回答
6

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

于 2008-10-10T13:44:16.400 回答
2

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

于 2008-10-10T12:43:54.150 回答
0

您是否尝试过 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"}

一些视频教程可以在这里找到

您还可以从这里找到很多帮助材料

于 2019-10-11T07:17:32.857 回答