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

网站建设咨询有客价优网站建政府免费培训面点班

网站建设咨询有客价优网站建,政府免费培训面点班,做微信小程序哪个网站好,硅谷电视剧他们做的是网站还是软件前言 待业家中继续学习。 Flask 项目结构 my_flask_app/ │ ├── app/ │ ├── __init__.py │ ├── routes/ -- 将不同功能模块的路由分开管理 │ │ ├── __init__.py │ │ ├── main.py -- 主模块的路由 │ │ └── auth.py -- 认证相关的路…

前言

待业家中继续学习。

Flask 项目结构

my_flask_app/
│
├── app/
│   ├── __init__.py
│   ├── routes/ -- 将不同功能模块的路由分开管理
│   │   ├── __init__.py
│   │   ├── main.py -- 主模块的路由
│   │   └── auth.py -- 认证相关的路由
│   ├── models/ -- 管理数据模型,通常与数据操作相关
│   │   ├── __init__.py 
│   │   └── user.py -- 用户模型
│   ├── templates/ -- 存放 HTML 模板文件
│   │   ├── layout.html -- 布局相关
│   │   └── home.html
│   └── static/ -- 存放静态文件,如CSS和JavaScript
│       ├── css/
│       └── js/
│
├── config.py -- 配置文件,包含应用的配置信息
├── requirements.txt -- 列出项目的依赖库
├── migrations/
│   └── ...
└── run.py -- 用于启动Flask应用

如何在Trae IDE中配置Python解释器

看到app.py 报错,因为没有导入flask库,但我的设备已经安装了,所以应该是需要配置下。在设置中找半天没有找到,后来搜索才知道原来是在Editor中,搜索python,然后将 Python: Default Interpreter Path的路径设置为设备安装的路径。

藏的有点深,可能从产品的角度上看是不想局限在某种语言,可以在Editor设置的说明文案部分增加编译器,解释器。

Snip20250401_2.png

Snip20250401_3.png

路由

Flask 路由是Flask应用的核心部分,用于处理不同URL的请求,并将请求的处理委托给相应的视图函数

路由的相关说明

  1. 定义路由: 使用 @app.route(‘/path’) 装饰器定义URL和视图函数的映射。
  2. 路由参数: 通过动态部分在URL中传递参数的类型
  3. 路由规则: 使用类型转换器指定URL参数的类型
  4. 请求方法: 指定允许的HTTP请求方法。(GET,POST,DELETE,PUT)
  5. 路由函数返回: 视图函数可以返回不同类型的响应
  6. 静态文件和模板: 管理静态文件和动态渲染 HTML 模板
  7. 路由优先级: 确保路由顺序正确,以避免意外的匹配结果

定义路由

from flask import Flaskapp = Flask(__name__)@app.route('/') # 装饰器,用于定义路由。/ 表示根 URL
def home(): return 'Welcome to the Home Page!'if __name__ == '__main__':app.run(debug=True)

在这里插入图片描述

路由参数

...
@app.route('/greet/<name>') # 动态路由,<name> 是一个变量
def greet(name):return f'Hello, {name}!'if __name__ == '__main__':app.run(debug=True)

路由规则

路由规则支持不同

  • 字符串(默认): 匹配任意字符串
  • 整数(int:name): 匹配整数值
  • 浮点数float:value): 匹配浮点数值
  • path(path:name): 匹配任意字符,包括斜杆/
# 访问/user/1 能正常输出User ID:1
@app.route('/user/<int:user_id>')
def user_profile(user_id):return f'User ID: {user_id}'# 访问/user/1 能正常输出User ID:1
@app.route('/user/<user_id>')
def user_profile(user_id):return f'User ID: {user_id}'# 访问/user/1 int和user_id同时存在时走int
@app.route('/user/<user_id>')
def user_profile2(user_id):return f'User ID2: {user_id}'# 换成float,访问/user/1
# Not Found
# The requested URL was not found on the server. If you entered the URL # manually please check your spelling and try again.
@app.route('/user/<float:user_id>')
def user_profile(user_id):return f'User ID: {user_id}'

请求方法

Flask 路由支持不同的 HTTP 请求方法,如 GET、POST、PUT、DELETE 等。可以通过 methods 参数指定允许的请求方法。

@app.route('/submit', methods=['POST'])
def submit():return 'Form submitted!'

此时设置了是POST请求,如果用Trae自带的浏览器访问,因为实际是GET请求,会报405错误码不允许

2025-04-02 10.58.36.png

使用postman发送post请求验证能获得正常的返回

2025-04-02 11.45.25.png

路由函数返回

  • 字符串: 返回纯文本响应
  • HTML: 返回HTML页面
  • JSON: 返回JSON数据
  • Response对象: 自定义响应
from flask import jsonify, Response@app.route('/json')
def json_response():data = {'key': 'value'}return jsonify(data)@app.route('/custom')
def custom_response():response = Response('Custom response with headers', status=200)response.headers['X-Custom-Header'] = 'Value'return response

返回json

2025-04-02 11.52.26.png

返回自定义响应

2025-04-02 11.52.56.png

静态文件和模板

静态文件(如 CSS、JavaScript、图片)可以通过 static 路由访问。模板文件则通过 templates 文件夹组织,用于渲染 HTML 页面。

styles.css

<link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}">
p {color: #940f0f;
}

这个格式默认是在找工程下的static目录下的styles.css

app.py

@app.route('/tutorial02/<name>')
def hello(name):return render_template('02.html', name=name)

02.html

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}"><title>02</title>
</head>
<body><h1>02</h1><p>{{ name }}</p>
</body>
</html>

Snip20250402_9.png

路由优先级

Flask 按照定义的顺序匹配路由,第一个匹配成功的路由将被处理。确保更具体的路由放在更一般的路由之前。

@app.route('/user/<int:user_id>')
def user_profile(user_id):return f'User ID: {user_id}'@app.route('/user')
def user_list():return 'User List'

/user/123 将匹配到 /user/<int:user_id>,而 /user 将匹配到 user_list

参考

  1. Flask项目结构
  2. Flask路由
http://www.dtcms.com/wzjs/154089.html

相关文章:

  • 未来对网站建设的需求谷歌seo排名优化服务
  • 常州市住房建设局网站站长工具爱情岛
  • 深圳做公司网站海口seo快速排名优化
  • 番禺网站开发哪家专业自主建站
  • 网站建设月薪优化的含义是什么
  • 分类信息网站的建设维护苏州新闻今天最新消息新闻事件
  • 长沙手机网站设计公司百度app下载并安装最新版
  • 网站seo快排软件seo网站优化服务合同
  • 做网站 智域大连推广赚钱的软件
  • 贵州网站建设推荐上海谷歌seo推广公司
  • 卫生系统网站的建设和维护seo优化推荐
  • 上线了做网站要钱长春网站快速优化排名
  • 郑州做网站公哪个网站学seo是免费的
  • it前端是做网站的网上推广app怎么做
  • 武汉三镇百度关键词相关性优化软件
  • 企业 北京 响应式网站百度客服人工电话
  • 微信 绑定网站类似凡科建站的平台
  • 松江区网站建设自己做网站设计制作
  • 做暧暖ox免费视频网站描述优化方法
  • 南昌做网站公司贴吧aso优化贴吧
  • 武汉 网站建设百度网站免费优化软件下载
  • 惠州网站建设电话如何在百度发布广告信息
  • 网站顶端大图怎么做百度录入网站
  • 刷题小程序制作平台网络seo推广
  • 庆阳网站建设报价网络运营与推广
  • 哪个网站做初中英语试题赚钱搜索引擎优化网站
  • 成都网站建设网推广方式怎么写
  • 个体户年报网上申报网站关键词优化的步骤和过程
  • 策划会展网站建设网络运营师资格证
  • 怎么做页眉页脚郑州搜索引擎优化