当前位置: 首页 > news >正文

做企业网站 长春平面设计的学校

做企业网站 长春,平面设计的学校,做玻璃钢的企业网站,天津建筑信息网Flask框架 1.Flask框架1.1安装flask1.2创建自己的第一个flask应用1.3运行flask应用 2.flask路由与视图函数2.1动态路由2.2支持多种http请求方法2.3使用jinja2模板渲染HTML2.4模板继承与块 3. Flask表单处理与用户输入3.1安装Flask-WTF3.2创建一个简单表单3.3表单验证 1.Flask框…

Flask框架

  • 1.Flask框架
    • 1.1安装flask
    • 1.2创建自己的第一个flask应用
    • 1.3运行flask应用
  • 2.flask路由与视图函数
    • 2.1动态路由
    • 2.2支持多种http请求方法
    • 2.3使用jinja2模板渲染HTML
    • 2.4模板继承与块
  • 3. Flask表单处理与用户输入
    • 3.1安装Flask-WTF
    • 3.2创建一个简单表单
    • 3.3表单验证

1.Flask框架

Flask 作为一个微框架,强调简单性和灵活性。它依赖于两个重要的 Python 库来提供核心功能:

Werkzeug:这是 Flask 的底层库,提供了 WSGI 接口、HTTP 请求和响应处理、路由等核心功能。

Jinja2:一个功能强大的模板引擎,用于动态生成 HTML 页面。

Flask的设计目的是让开发者能够快速开发应用,并提供了灵活的方式进行扩展。如果你不需要复杂的功能,Flask的核心本身已经足够满足需求。如果你需要更多高级特性,可以通过 Flask 的扩展库进行补充。

1.1安装flask

安装 Flask 非常简单,只需使用 Python 的包管理工具 pip 即可:
在这里插入图片描述
安装完成后,你可以通过创建一个简单的Flask 应用来验证是否安装成功。

1.2创建自己的第一个flask应用

Flask 的应用结构非常简单,只需创建一个 Python 文件,并通过 Flask()类来实例化应用对象。以下是一个最简单的 Flask 应用示例:
在这里插入图片描述
在这里插入图片描述
代码解析:

Flask(__name __ ):创建 Flask 应用实例,__name__参数用于 Flask 了解当前模块的名称,通常我们使用这个参数来帮助 Flask 在不同模块间进行配置。

@app.route(‘/’):定义路由和视图函数的映射。'/'是根路径,当用户访问根 URL 时,Flask会调用 hello world()函数。

return 'Hello,yh:视图函数返回一个简单的字符串响应,Flask 会将其作为 HTTP 响应返回给客户端。

app.run(debug=True):启动 Flask开发服务器,debug=True 表示启用调试模式,这样可以在开发过程中自动重载应用,并在发生错误时显示详细信息。

注意:关闭服务器防火墙

1.3运行flask应用

保存上述代码为 app.py,然后在命令行中运行:
在这里插入图片描述
这时 Flask 会启动一个开发服务器,默认会监听 127.0.0.1:5000。打开浏览器,访问http://127.0.0.1:5000/,你会看到“Hello,yh”的页面。
在这里插入图片描述

2.flask路由与视图函数

Flask 的核心之一就是路由系统,它将用户访问的 URL 与对应的视图函数相连接。Flask 通过装饰器@app.route()来定义路由,而视图函数则负责处理用户的请求并返回响应。

2.1动态路由

Flask 支持动态路由参数,可以通过 URL 中的动态部分来获取数据。以下是一个示例:
在这里插入图片描述
代码解析:
:这是一个动态路由参数,Flask 会提取 URL 中的 name 部分并将其传递给视图函数

当用户访问/greet/lisi 时,name 的值将为 lisi,返回的响应为 Hello,lisi!。

f:表示输出格式

在这里插入图片描述

2.2支持多种http请求方法

Flask 不仅支持 GET 请求,还支持其他常见的 HTTP 请求方法,如 POST、PUT、DELETE 等。你可以通过methods 参数来指定允许的请求方法:
在这里插入图片描述

代码解析:
methods=[‘POST’]:只允许 POST 请求访问此路由。如果用户通过 GET 请求访问,Flask 会返回405 Method Not Allowed 错误:
在这里插入图片描述

在这里插入图片描述
如果要连接需要改请求方法为post
在这里插入图片描述
在这里插入图片描述

2.3使用jinja2模板渲染HTML

Flask 结合 Jinja2 模板引擎来动态生成 HTML 页面。你可以将 HTML 文件与 Python 代码分离,保持应用结构清晰。在 Flask 中,模板文件默认存放在templates 文件夹中。

假设我们有一个名为 greet.html 的模板文件,内容如下:
在这里插入图片描述
在vim中设置set paste取消缩进
在这里插入图片描述
在这里插入图片描述
在 Flask 应用中,我们可以通过 render_template 函数渲染模板并传递动态数据
在这里插入图片描述
在这里插入图片描述
代码解析:
render_template(‘greet.html’,name=name):Flask 会加载 greet.html 模板,并将 name的值传递给模板。模板中的{{ name }}会被替换为传入的值。
在这里插入图片描述

2.4模板继承与块

Flask 支持模板继承和块(Block)功能,这对于构建复杂页面非常有用。你可以在基础模板中定义通用的布局结构,在子模板中覆盖特定的部分。

基础模板base.html
在这里插入图片描述
在这里插入图片描述
子模版index.html
在这里插入图片描述
代码解析:
{% extends ‘base.html’ %}:子板继承了 base.html 模板。
{% block title %}Home{% endblock %}:覆盖父模板中的 title 块。
{% block content %}:定义页面的主要内容区域
在这里插入图片描述
在这里插入图片描述

3. Flask表单处理与用户输入

Flask可以通过表单来获取用户输入,常见的做法是结合 Flask-WTF 扩展来简化表单处理和验证。
Flask-WTF 为Flask 提供了一个表单类,你可以在表单类中定义字段和验证规则。

3.1安装Flask-WTF

在这里插入图片描述

3.2创建一个简单表单

在这里插入图片描述
代码解析:
FlaskForm:继承自 FlaskForm类,定义表单字段。

StringField(‘Name’,validators=[DataRequired()]):定义了一个文本输入字段,并且通过 DataRequired()验证器确保字段不能为空。

form.validate_on_submit():检查表单是否通过验证并被提交。

index.html模板
在这里插入图片描述
在这里插入图片描述
代码解析:
{{ form.csrf_token }}:Flask-WTF会自动生成并验证 CSRF token,以防止跨站请求伪造攻击。
{{ form.name() }}:这是通过 Jinja2 模板渲染 NameForm 表单的字段。form.name()会生成对应的 HTML 标签。
{% if form.name.data %}:如果用户提交了表单并且 name 字段不为空,则显示欢迎信息。

3.3表单验证

Flask 表单处理的强大之处在于它的验证机制。通过 wtforms,你可以非常方便地为表单字段添加各种验证规则。比如,除了 DataRequired(),你还可以使用:
Length(min=2,max=50):验证输入的长度。
Email():验证输入是否是有效的邮箱地址。
EqualTo(‘password’):验证两个字段的值是否相等。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.yayakq.cn/news/85290/

相关文章:

  • 绍兴网站建设方案推广杭州做公司官网的公司
  • 青岛胶南做网站的有多少搭建服务器需要多少钱
  • 想建一个自己的网站浙江省建设厅老网站
  • 站酷官网入口网站代理备案价格
  • 设计网站推荐素材网站安卓应用开发环境
  • 微商网站制作王野天个人简历
  • 云南建设人才网站首页六安网站建设公司
  • 中英文网站案例手机上怎么赚钱啊 正规
  • 枣阳网站建设吧logo在线制作神器
  • 专做废旧电子电路板配件回收的网站湘潭网站建设电话
  • 传统企业公司网站优化案例深圳手机端网站建设专业公司
  • 德州聊城网站建设企业网络推广方案的制定
  • 南京微网站开发做胃镜多少钱那好天津津门网站a
  • 常州外贸网站淄博网站建设
  • 帝国网站做图片轮播南京企业网站做优化
  • 做网站听的纯音乐网站开发结论
  • 南昌网站建设博客做喜报的网站
  • 游戏网站做代理seo关键词优化举例
  • 青海网站建设哪家好dkp网站开发
  • 正常开发一个网站需要多少钱山西建设工程执业注册中心网站
  • 购物网站图片的放大怎么做的自己创建网站怎么赚钱
  • 网站展示 包括什么网站怎么做留言提交功能
  • 墨客网站建设网站开发什么语言比较好
  • 静宁网站建设百度收录网站方法
  • 企业商城网站建设方案提高seo排名
  • 林芝做网站wordpress前台发文章
  • 视频网站开发策划书大气简约企业网站模板免费下载
  • 做一电影网站怎么赚钱吗建设部一建注册公示网站
  • 手机网站建设的趋势网页设计font代码
  • 网站如何进行建设怎么做网站地图的样式