Web2py - 框架概述

  • 简述

    web2py 是一个全栈网络框架,开发人员可以使用它来完整地开发网络应用程序。它包括用于设计程序的 SQL 数据库集成和多线程 Web 服务器。
  • 用于设计用户程序的 Web 界面

    根据操作系统执行命令后,web2py 会显示一个启动窗口,然后显示一个 GUI 小部件,要求用户选择 -
    • 一次性管理员密码,
    • 用于 Web 服务器的网络接口的 IP 地址,
    • 以及服务请求的端口号。
    管理员包括添加和编辑任何新 Web 应用程序的所有权限。
    默认情况下,web2py 在127.0.0.1:8000(本地主机上的端口 8000)上运行其 Web 服务器,但用户可以根据需要在任何可用的 IP 地址和端口上运行它。
    web2py GUI 小部件将如下所示显示。
    图形用户界面小工具
    该密码用于管理界面,用于新模块中的任何更改。
    用户设置管理密码后,web2py 在具有以下 URL 的页面启动 Web 浏览器 - http://127.0.0.1:8000/
    框架的欢迎页面将如下所示显示。
    框架
  • 在 web2py 中设计一个基本程序

    启动 web2py 应用程序后,通过上述 URL,我们可以使用管理界面创建一个新模块,例如“helloWorld”
    管理界面将要求输入密码以进行身份​​验证,因为管理员拥有添加和编辑任何新 Web 应用程序的所有权限。
    Web2py 应用程序
    上面给出的快照包括页面详细信息,其中列出了所有已安装的 web2py 应用程序并允许管理员管理它们。默认情况下,web2py 框架自带三个应用程序。他们是 -
    • 用户当前正在实施的管理应用程序。
    • 一个示例应用程序,带有在线交互式文档和 web2py 官方网站的一个实例。
    • 欢迎申请。它包括任何其他 web2py 应用程序的基本模板。它也被称为脚手架应用程序。该应用程序还在启动时欢迎用户。
    将新应用程序的名称设为“helloWorld”
    一旦创建了一个新的应用程序,用户就会被重定向到一个包含相应应用程序的视图、模型和控制器的页面。
    编辑申请
    用户可以通过提及以下 URL 查看新创建的应用程序 - http://127.0.0.1:8000/helloWorld
    默认情况下,用户可以在点击上述 URL 时查看以下屏幕。
    为了打印给定 Web 应用程序“helloWorld”的消息,在default.py控制器中进行了更改。
    Web应用程序
    名为“index”的函数是返回值和显示必要输出的默认函数。如上所述,字符串“Hello World- Welcome to my first web application”用作返回值,在屏幕上显示输出。
    输出显示如下 -
    输出
  • 回传

    验证表单输入的机制非常普遍,不被认为是一种好的编程习惯。每次都要验证输入,这对验证来说是一种负担。
    web2py 中一个更好的模式是将表单提交到生成它们的相同操作。这种机制称为“回发”,这是 web2py 的主要特征。总之就是在postback中实现自提交。
    
    def first():
       if request.vars.visitor_name: #if visitor name exists
          session.visitor_name = request.vars.visitor_name
          redirect(URL('second'))#postback is implemented
       return dict()
    
  • 增删改查应用

    web2py 包括执行创建、检索、更新和删除功能的应用程序。CRUD循环描述了数据库的基本功能,它是持久的。
    所有应用程序逻辑都写在模型中,这些模型由控制器检索并在视图的帮助下显示给用户。

    应用管理员

    对于 PHP,应用程序服务器包括phpmyadmin下所有数据库的列表。以类似的方式,web2py 提供了一个用于管理、创建和删除表或数据库的接口,称为“appadmin”。
    在实现表背后的逻辑之前,有必要创建数据库及其关联的表。
    访问appadmin的 URL -
    http://127.0.0.1:8000/applicationname/appadmin
    在点击 URL 时,用户将获得与给定应用程序关联的表列表。
    表格列表
    此接口不打算公开。它旨在轻松访问数据库。它由两个文件组成,即 - 控制器“appadmin.py”和视图“appadmin.html”
    它一次最多可以对 100 条记录进行分页。“appadmin”的用法将在后续章节中讨论。