首页 > 其他分享 >002.flask的基本使用

002.flask的基本使用

时间:2024-08-04 16:38:48浏览次数:13  
标签:基本 __ flask app 如下 username 002 html def

目录

flask的基本使用

1.基本使用

1722740726950

点三角形运行

1722740771712

复制http://127.0.0.1:5000到浏览器上软后加上面的/index得到如下:

1722740860159

  • 可以给其添加debug,host(主机号),port(端口号)

    在run函数中添加:

    if __name__ == '__main__':
        app.run(debug=True,host='0.0.0.0',port=8888)
    
    • 简单说一下这三个的作用

      1. debug=True就是不需要手动运行,没改动一下,它会自动刷新。
      2. host就是主机号,如果设置为0.0.0.0的话,别的电脑可以访问我们的项目。
      3. port:就是端口号,flask默认的端口号是5000,但是有些电脑这个端口可能被别的程序占用了,这时候就需要改端口号了。

      1722747528524

      如图:

      1. 1722747582194
      2. 1722747615890

2.传参的两种方式

  1. 第一种方法

    /blog/<数据类型:参数名>

    • 先创建一个路由和一个视图函数如下:

      1722741288458

    • 运行如下:

      1722741351895

  2. 第二种方法

  • 先导入request模块

    from flask import Flask,request

1722741451901

  • 然后创建一个路由和一个视图函数如下:

    1722741628511

提示:这里的request.args是得到一个类似与 字典的数据,用get()方法来获取键名为page的值。

  • 得到结果如下:

    1722741942718

3.通过返回html网页来展示

  • 导入模块render_template

    from flask import render_template

    如图:

    1722742276779

  • 在templates文件下新建一个.html文件

    1722742367316

    1722742420869

    1722742444048

    然后再first.html中添加一点检验内容如下:

    1722742587285

  • 然后创建一个路由和一个视图函数如下:

    1722742809522

    温馨提示:上图中的路由地址blog/html需要修改为/blog/html,要不然会报错。

    1722743001033

  • 得出结果如下

    1722743035793

4.通过面向对象传参给html网页

  • 提示:我们还是first.html中展示内容

  • 在app.py中创建一个类User如下:

    1722743383593

  • 然后创建一个路由和一个视图函数并且调用

    1722743600331

  • 在first.html中调用属性如下:

    1722743727602

    提示:密码那里写错了,是users.pwd,见谅!!!

  • 运行,得出结果如下:

    1722743911278

5.在html里面写条件语句

  • 模拟一个问题:如果大于等于18岁,允许上网,否则不可以上网。

    • 解决方法

      1. 创建一个html文件online.html

        1722744456522

      2. 创建一个路由和一个视图函数如下

        1722744602142

      3. online.html文件中调用这个属性

        1722745067036

      4. 结果如下:

        1722745272136

        1722745287064

    1722745301182

6.在html中用循环

  • 在templates文件夹中创建一个circle.html的文件

  • circle.html文件内容如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        {% for con in contexts %}
    
        <div>账号:{{con.username}}</div>
        <div>密码:{{con.password}}</div>
    
        {% endfor %}
    </body>
    </html>
    
  • 创建一个路由和一个视图函数如下

    @app.route('/circle')
    def circle():
        context=[
            {
                'username':'soul',
                'password':'xjs13149420'
            },{
                'username':'python',
                'password':'dianzan'
            }
        ]
        return render_template('circle.html',context=context)
    
  • 调用函数结果如下:

    1722746386129

7.总结

  1. 所有app.py的代码如下:
from flask import Flask,request,render_template
 
app = Flask(__name__)
 
@app.route('/')
def hello_world():  # put application's code here
    return 'Hello World!'
#创建一个路由
@app.route('/index')
#创建一个视图函数
def index():
    return '欢迎学习Flask 框架'
@app.route('/blog/<int:arg>')
def args(arg):
    return f'你输入的参数是{arg}'
@app.route('/request/')
def req():
    page=request.args.get('page',default=1,type=int)
    return f'你正在浏览图书的页数是{page}页'

@app.route('/blog/html')
def html1():
    return render_template('first.html')

#创建一个类
class User():
    def __init__(self,username,pwd):
        self.username=username
        self.pwd=pwd
#
@app.route('/class')    
def cs():
    user=User(username='admin',pwd='xjs13149420')
    return render_template('first.html',users=user)
@app.route('/internet/')
def if_age():
    age=request.args.get('age',default=17,type=int)
    return render_template('online.html',age_big=age)

@app.route('/circle')
def circle():
    context=[
        {
            'username':'soul',
            'password':'xjs13149420'
        },{
            'username':'python',
            'password':'dianzan'
        }
    ]
    return render_template('circle.html',contexts=context)
if __name__ == '__main__':
    app.run(debug=True,host='0.0.0.0',port=8888)


  1. templates文件夹中的代码展示如下:

    • circle.html:

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Document</title>
      </head>
      <body>
          {% for con in contexts %}
      
          <div>账号:{{con.username}}</div>
          <div>密码:{{con.password}}</div>
      
          {% endfor %}
      </body>
      </html>
      
    • first.html:

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Document</title>
      </head>
      <body>
          <div>键盘敲烂,工资过万!!!</div>
          <div>用户名:{{users.username}}</div>
          <div>密码:{{users.pwd}}</div>
      </body>
      </html>
      
    • online.html

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Document</title>
      </head>
      <body>
          {% if age_big < 18 %}
          <div>你的年龄是{{age_big}},未成年不可以上网!!!</div>
      
          {% else %}
          <div>你的年龄是{{age_big}},可以上网,欢迎!!!</div>
          {% endif %}
          
      </body>
      </html>
      

标签:基本,__,flask,app,如下,username,002,html,def
From: https://www.cnblogs.com/positive-boy/p/18341931

相关文章

  • C语言--基本数据类型
    数据类型概述数据类型分类基本数据类型构造数据类型指针类型空类型标识符规范在C语言中,一般标识符用于变量名、宏名、函数名…注意事项:可用数字、英文字母(大小写)、下划线、美元符形如:data、temp、func()、add_int()、xxx_123()数字不能位于开头不能和关键字重复si......
  • iptables基本认识
    iptables概念名词:容器:存放东西表(table):存放链的容器,防火墙最大的概念链(chain):存放规则的容器规则(policy):允许或拒绝规则,书写的防火墙条件就是各种防火墙规则。防火墙四表五链4表:filter表、nat表、raw表、mangle表filter:过滤规则表、根据预定义的规则过滤符合条件的......
  • Flask 快速搭建模板1
    快速搭建基础框架成品预览pip安装需要导入的基础包pipinstallflaskpipinstallflask-sqlalchemypipinstallflask-wtfpipinstallbootstrap-flaskpipinstallflask-loginpipinstallflask-moment创建目录结构typenul>main.pytypenul>config.pytyp......
  • Flask 用户身份验证包括登录、注册和谷歌登录未集成在一起
    https://www.freecodecamp.org/news/how-to-setup-user-authentication-in-flask/我已经使用上面的链接进行了基本的用户身份验证,但我无法添加谷歌登录。我已经尝试了很多次,但我无法添加谷歌登录。任何人都可以帮我做这个吗?问题是有src_init_.py和man......
  • [附开题]flask框架高校资产管理系统d8y3s(源码+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着高等教育事业的快速发展,高校资产规模日益庞大,种类繁多,管理难度显著增加。传统的资产管理方式往往依赖于手工记录和纸质档案,不仅效率低......
  • [附开题]flask框架贺州图特产管理系统uuy79(源码+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景贺州,这座历史悠久、文化底蕴深厚的城市,以其丰富的自然资源和独特的地理位置孕育了众多令人瞩目的特产。然而,在信息化快速发展的今天,贺州特......
  • [附开题]flask框架红枫超市会员管理系统ew5iq(源码+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着零售行业的快速发展与消费者需求的日益多样化,超市作为人们日常生活中不可或缺的一部分,其管理效率和服务质量直接影响着顾客的购物体验......
  • 5、Qt-pyqt6常用基本控件 - 按钮控件
    Buttons--按钮类控件名说明PushButton按钮ToolButton工具按钮RadioButton单选按钮CheckBox复选框CommandLinkButton命令链接按钮DialogButtonBox对话框按钮盒......
  • 【002】Linux配置静态ip地址
    一、环境虚拟机版本:VMwareLinux镜像文件:CentOS-7-x86_64-Minimal-2207-02.iso主机系统:Windows11家庭中文版主机系统类型:64位操作系统,基于x64的处理器远程连接工具:宝塔远程工具二、配置静态ip1、将虚拟机的网络模式设置为NAT模式2、设置VMware的网络模式选择VM......
  • SOMEIP_ETS_002:数组长度过长
    测试目的:确保DUT在接收到的SOME/IP消息中数组长度超出实际数组长度时,能够返回错误消息。描述本测试用例旨在验证当DUT接收到一个声明数组长度超过其实际长度的SOME/IP消息时,DUT是否能够正确地返回错误消息(MALFORMED_MESSAGE)。测试拓扑:具体步骤:TESTER:创建SOME/IP消息,......