Web2py-简介

web2py被定义为一个免费的,开放源代码的Web框架,用于敏捷开发,其中涉及数据库驱动的Web应用程序;它是用Python编写的,并且可以用Python编程。这是一个全栈框架。它包含所有必要的组件,开发人员需要构建一个功能全面的Web应用程序。

与传统模式不同,web2py框架遵循运行Web应用程序的“模型-视图-控制器”模式。

  • 模型是应用程序的一部分,其中包括数据逻辑。模型中的对象用于从数据库检索和存储数据。
  • 视图是应用程序的一部分,它有助于向最终用户呈现数据显示。数据的显示是从模型中获取的。
  • 控制器是应用程序的一部分,用于处理用户交互。控制器可以从视图中读取数据,控制用户输入,并将输入数据发送到特定模型。
Web2py-简介
  • web2py具有内置功能来管理cookie和会话。提交事务后(根据SQL),该会话也同时存储。
  • web2py具有在完成某些操作后按计划的间隔运行任务的能力。这可以通过CRON来实现。

web2py –工作流程

看一下下面给出的工作流程图。

Web2py-简介

工作流程图如下所述。

  • 模型视图控制器组件组成了用户的web2py应用。
  • 可以在web2py的同一实例中托管多个应用程序。
  • 浏览器将HTTP请求发送到服务器,并且服务器与ModelControllerView交互以获取必要的输出。
  • 箭头表示与数据库引擎的通信。数据库查询可以用原始SQL编写,也可以使用web2py数据库抽象层(将在以后的章节中进行讨论)编写,以便web2py应用程序代码独立于任何数据库引擎。
  • 模型建立与数据库的数据库连接并与Controller进行交互。另一方面,控制器视图交互以呈现数据显示。
  • 所述分派器映射所请求的URL,如在控制器的函数调用HTTP响应给出。该函数的输出可以是字符串或哈希表。
  • 数据由View呈现。如果用户请求HTML页面(默认),则数据将呈现为HTML页面。如果用户以XML请求相同的页面,则web2py尝试找到可以以XML呈现字典的视图。
  • web2py支持的协议包括HTML,XML,JSON,RSS,CSV和RTF。

模型视图控制器

web2py的模型-视图-控制器表示如下:

模型

"db.py" is the model:
db = DAL('sqlite://storage.sqlite')
db.define_table(employee, Field('name'), Field(‘phone’))

模型包括应用程序数据的逻辑。如上图所示,它连接到数据库。考虑使用SQLite,并将其存储在storage.sqlite文件中,并将表定义为employee。如果该表不存在,则web2py可以通过创建相应的表来提供帮助。

Controller

程序“ default.py”Controller

def employees():
   grid = SQLFORM.grid(db.contact, user_signature = False)
   return locals()

web2py中,URL映射有助于访问功能和模块。对于上面的示例,控制器包含一个称为雇员的单个功能(或“动作”)。

控制器执行的操作将返回字符串或Python字典,该字典或键是包含局部变量集的键和值的组合。

View – 视图

View“ default / contacts.html”

{{extend 'layout.html'}}
<h1>Manage My Employees</h1>
{{=grid}}

对于给定的示例,View在关联的控制器功能执行后显示输出。

视图的目的是在字典中呈现HTML形式的变量。该视图文件是用HTML,但它嵌入Python代码的帮助下{{和}}分隔符。

嵌入HTML的代码由字典中的Python代码组成。

从web2py开始

对于Windows,UNIX和Mac OS X等所有主要操作系统,web2py均采用二进制软件包。

安装web2py很容易,因为:

  • 它包含Python解释器,因此您不需要预安装它。还有在所有操作系统上运行的源代码版本。
  • 以下链接包含web2py二进制软件包,可根据用户需要下载-www.web2py.com
  • 与其他框架不同,web2py框架不需要预安装。用户需要根据操作系统要求下载zip文件并解压缩。
  • web2py的框架是用Python编写的,它是不需要任何编译或复杂的安装运行一个完整的动态语言。
  • 它使用类似于Java或.net等其他编程语言的虚拟机,并且可以透明地字节编译开发人员编写的源代码。
操作系统命令
Unix和Linux(源代码分发)python web2py.py
OS X(二进制发行版)打开web2py.app
Windows(二进制web2py发行版)web2py.exe
Windows(源web2py发行版)c:/Python27/python.exe web2py.py

作者:terry,如若转载,请注明出处:https://www.web176.com/web2py/900.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2020年11月2日 下午2:50
下一篇 2020年11月2日 下午2:54

相关推荐

发表回复

登录后才能评论