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

【Flask 系统教程 1】入门及配置

当你开始学习 Flask 时,了解如何进行基本的配置是非常重要的。Flask 是一个简单而灵活的 Python Web 框架,它允许你快速构建 Web 应用程序,并且易于学习。在这篇博客中,我将介绍如何从零开始进行 Flask 的基础配置,适合初学者阅读。

入门

安装 Flask

首先,你需要确保在你的开发环境中安装了 Flask。你可以通过使用 pip 包管理器来安装 Flask:

pip install Flask

第一个Flask应用

创建 Flask 应用

创建一个基本的 Flask 应用非常简单。只需创建一个 Python 文件,并导入 Flask 类。然后,实例化一个 Flask 对象即可:

from flask import Flaskapp = Flask(__name__)

创建路由

路由定义了应用程序中的 URL 和处理请求的函数之间的映射关系。在 Flask 中,你可以使用 @app.route 装饰器来定义路由。例如,要在根路径上定义一个简单的路由:

@app.route('/')
def index():return 'Hello, Flask!'

运行应用

在你的 Flask 应用中添加一个启动代码,以便在本地运行应用。通常,你会在文件的末尾添加以下代码:

if __name__ == '__main__':app.run(debug=True)

这将使应用在调试模式下运行,并在代码发生更改时自动重新加载

创建模板

Flask 使用 Jinja2 模板引擎来渲染动态内容。你需要在 templates 文件夹中创建 HTML 模板文件。例如,创建一个名为 index.html 的模板文件:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>My Flask App</title>
</head>
<body><h1>{{ message }}</h1>
</body>
</html>

在视图函数中渲染模板

最后,你需要在视图函数中渲染模板并传递数据。在这个示例中,我们将在根路径的视图函数中渲染 index.html 模板,并传递一个消息:

from flask import render_template@app.route('/')
def index():message = 'Hello, Flask!'return render_template('index.html', message=message)

通过以上步骤,你已经完成了一个基本的 Flask 应用程序的配置和设置。现在你可以在本地运行应用,打开浏览器访问 http://127.0.0.1:5000/,你将会看到你在模板中定义的消息。

配置

修改运行端口

from flask import Flask# 创建Flask应用
app = Flask(__name__)# 定义路由及其处理函数
@app.route('/')  # 根路由
def index():return 'Hello, world!'# 运行Flask应用并指定端口
if __name__ == '__main__':app.run(debug=True, port=5000)  # 在这里指定端口号

启动方式

上面介绍了直接运行py文件进行服务的启动,下面介绍其他的启动方法

  • 终端启动
$ export FLASK_APP=helloworld
$ flask run
* Running on http://127.0.0.1:5000/

需要注意文件路径要在 app.py所在目录下,并且文件名必须是 app.py

启动参数

参数使用示例作用
–reload / --no-reloadflask run --reload热部署
–debugger / --no-debuggerflask run --debugger调试模式 (这个才是热部署)
–with-threads / --without-threads多线程
–extra-files PATHflask run --extra-files static/;templates/;config/settings.ini增加热部署监听目录
–exclude-patterns PATHflask run --exclude-patterns “*.log” “config/*”增加热部署不监听的目录
–help获取帮助

设置配置

# 通过修改配置参数
app.config.update(DEBUG=True)
app.config['DEBUG'] = True# 通过mapping加载
app.config.from_mapping({'DEBUG':True})# 通过配置对象设置
class Config:DEBUG = True
app.config.from_object(config)# 通过配置文件设置
app.config.from_pyfile('config.py')
app.config.from_json('config.json')

通过以上方法可以在Python 文件中进行配置设置

  • 格式

config.py
DEBUG = True

config.json
{"DEBUG":"True"}

http://www.lryc.cn/news/344183.html

相关文章:

  • 石家庄河北银行的
  • 【CCNP ENCOR OCG】CHAPTER 2》Spanning Tree Protocol
  • docker无法映射/挂载根目录
  • C++中不要重新定义继承而来的non-virtual函数
  • C++ 对象型参数和返回值
  • LeetCode 字符串专题——KMP算法_28. 找出字符串中第一个匹配项的下标
  • 上班不想用脑子写代码了怎么办?那就试试Baidu Comate啊宝贝
  • 【管理咨询宝藏94】某国际咨询公司供应链财务数字化转型方案
  • C++_使用邻接表(链表-指针)实现有向图[完整示例及解释]
  • Gitlab自动化测试的配置
  • Qwen-Audio:推动通用音频理解的统一大规模音频-语言模型(开源)
  • 杭州破冰之举:全面取消住房限购,激发市场新活力
  • ICode国际青少年编程竞赛- Python-1级训练场-变量练习
  • 学习STM32第二十天
  • 智能BI(后端)-- 系统异步化
  • AI绘画Stable Diffusion 插件篇:智能标签提示词插件sd-danbooru-tags-upsampler
  • Android OpenMAX(六)OMXStore
  • Ubuntu下halcon软件的下载安装
  • 『ZJUBCA Collaboration』WTF Academy 赞助支持
  • Python开源工具库使用之运动姿势追踪库mediapipe
  • 【Android Studio】开启真机调试
  • CMakeLists.txt语法规则:部分常用命令说明四
  • 学习前端第三十二天(Rest 参数与 Spread 语法,变量作用域,闭包)
  • mysql从入门到起飞+面试基础题
  • 设计模式:命令模式
  • setinterval和settimeout区别在于
  • shell_结束进程脚本
  • GDPU unity游戏开发 碰撞器与触发器
  • IP地址定位技术在网络安全中的作用
  • R语言中,查看经安装的包,查看已经加载的包,查看特定包是否已经安装,安装包,更新包,卸载包