【Flask框架②】——第一个Flask项目

文章目录 第一个Flask项目1、安装环境2、创建项目3、启动程序4、访问项目5、参数说明6、应用程序配置参数1.从配置对象中加载2.从配置文件中加载3.从环境变量中加载4.从Pycharm中的运行时设置环境变量的方式加载5.企业项目开发常用的方式**`推 荐:牛客题霸-经典高频面试题库`**

第一个Flask项目

本文适合有一定前端、Python、网路基础的同学阅读。

1、安装环境

创建虚拟环境

mkvirtualenv flask

安装Flask

pip install flask

查看虚拟环境

workon

进入虚拟环境

workon flask_env

列出当前虚拟环境安装的库

pip list

【Flask框架②】——第一个Flask项目

2、创建项目

【Flask框架②】——第一个Flask项目 【Flask框架②】——第一个Flask项目 app.py

rom flask import Flaskapp = Flask(__name__) # 初始化 Flask项目的服务@app.route('/')def hello_world(): # put application's code here return 'Hello World!'if __name__ == '__main__': app.run() 3、启动程序

方式一:pycharm run 【Flask框架②】——第一个Flask项目 方式二 :terminal python app.py 【Flask框架②】——第一个Flask项目

方式三 进入目录 python app.py 【Flask框架②】——第一个Flask项目 方式四 设置环境变量 set FLASK_APP = app.py flask run 【Flask框架②】——第一个Flask项目 Ctrl C 关闭程序

4、访问项目

【Flask框架②】——第一个Flask项目

5、参数说明

文件:app.py

rom flask import Flaskapp = Flask(__name__) # 初始化 Flask项目的服务@app.route('/')def hello_world(): # put application's code here return 'Hello World!'if __name__ == '__main__': app.run()

接下来就来详细查看一下 Flask 应用程序在创建的时候一些需要我们关注的参数

def __init__( self, import_name: str, static_url_path: t.Optional[str] = None, static_folder: t.Optional[t.Union[str, os.PathLike]] = "static", static_host: t.Optional[str] = None, host_matching: bool = False, subdomain_matching: bool = False, template_folder: t.Optional[str] = "templates", instance_path: t.Optional[str] = None, instance_relative_config: bool = False, root_path: t.Optional[str] = None, ):

import_name:str, 当前Flask程序所在的包(模块)名字,传 __name__ 就可以 其可以决定 Flask 在访问静态文件时查找的路径

static_url_path: t.Optional[str] = None, 静态文件访问路径,可以不传,默认为:/ + static_folder

static_folder: t.Optional[t.Union[str, os.PathLike]] = "static", 静态文件存储的文件夹,可以不传,默认为 static

template_folder: t.Optional[str] = "templates", 模板文件存储的文件夹,可以不传,默认为 templates

默认参数情况下

app = Flask(__name__)|static| 1.png|templates| index.html|helloword.py访问127.0.0.1:5000:static/1.png

修改参数的情况下

from flask import Flaskapp = Flask(__name__, static_url_path='/Flyme awei', static_folder='static') # 初始化 Flask项目的服务@app.route('/')def hello_world(): # put application's code here return 'Hello World!'if __name__ == '__main__': # IP:0.0.0.0 代表当前计算机所有的IP地址, # port:端口默认是 5000 # flask的debug模式:把错误信息显示到页面中 app.run(host='0.0.0.0', port=5000, debug=True)

debug源文件 【Flask框架②】——第一个Flask项目

app = Flask(__name__, static_url_path='/Flyme awei',static_folder='static')|folder_param # 此处目录名变化 | | 1.png |helloworld.py 访问127.0.0.1:5000/static_url_path/1.png才可以访问到图片

【Flask框架②】——第一个Flask项目

app.run参数 可以指定运行的主机IP地址,端口,是否开启调试模式

app.run(host="0.0.0.0", port=5000, debug = True) IP:0.0.0.0 代表当前计算机所有的IP地址

关于DEBUG调试模式 【Flask框架②】——第一个Flask项目

1.程序代码修改后可以自动重启服务器 2.在服务器出现相关错误的时候可以直接将错误信息返回到前端进行展示 【Flask框架②】——第一个Flask项目

6、应用程序配置参数

应用程序配置参数设置的是一个Web应用工程的相关信息,比如:

数据库的连接信息日志的配置信息自定义的配置信息…

注意:这样可以集中管理项目的所有配置信息 Flask将配置信息保存到了app.config属性中,该属性可以按照字典类型进行操作。

1.从配置对象中加载

app.config.from_object(DefaultConfig)

# -*- coding: utf-8 -*-# @File : 02应用程序参数.py# @author: Flyme awei # @email : 1071505897@qq.com# @Time : 2022/7/26 0:25from flask import Flaskclass DefaultConfig(object): """默认Web项目配置""" USER = 'Flyme awei' PWD = 'root'app = Flask(__name__)app.config.from_object(DefaultConfig)@app.route('/')def index(): print(app.config['USER']) print(app.config["PWD"]) return "hello word!"if __name__ == '__main__': app.run(host='0.0.0.0', port=8080)

【Flask框架②】——第一个Flask项目 这样的好处是可以在项目开发中来继承和重写:

class MyDevelopmentConfig(DefaultConfig): DEBUG=True 2.从配置文件中加载

新建一个配置文件setting.py ,这个文件中的内容是: 参数名=参数值 ,比如:PWD = 'root'

app.config.from_pyfile('setting.py')

# -*- coding: utf-8 -*-# @File : setting.py.py# @author: Flyme awei # @email : 1071505897@qq.com# @Time : 2022/7/26 0:38# Web 项目的整个配置文件USER = 'Flyme awei'PWD = 'root' # -*- coding: utf-8 -*-# @File : 02从配置对象中加载.py# @author: Flyme awei # @email : 1071505897@qq.com# @Time : 2022/7/26 0:25from flask import Flaskapp = Flask(__name__)app.config.from_pyfile('setting.py')@app.route('/')def index(): print(app.config['USER']) print(app.config["PWD"]) return "hello word!"if __name__ == '__main__': app.run(host='0.0.0.0', port=8080)

【Flask框架②】——第一个Flask项目

3.从环境变量中加载

先配置环境变量 【Flask框架②】——第一个Flask项目

【Flask框架②】——第一个Flask项目

Flask使用环境变量加载配置的本质是通过环境变量值找到配置文件,再读取配置文件的信息,其使用方式为

app.config.from_envvar('环境变量名')

环境变量的值为配置文件的绝对路径 先在终端中执行如下命令

export PROJECT_SETTING='~/setting.py’

# -*- coding: utf-8 -*-# @File : 04从环境变量中加载.py# @author: Flyme awei # @email : 1071505897@qq.com# @Time : 2022/7/26 0:50from flask import Flaskapp = Flask(__name__)app.config.from_envvar('SETTING_PATH', silent=True)@app.route('/')def hello_word(): print(app.config['USER']) print(app.config['PWD']) return 'hello word'if __name__ == '__main__': app.run('0.0.0.0', 8888, debug=True)

silent参数: False 表示不安静的处理,没有值时报错通知,默认为False True 表示安静的处理,即时没有值也让Flask正常的运行下去

4.从Pycharm中的运行时设置环境变量的方式加载

使用非常少 【Flask框架②】——第一个Flask项目【Flask框架②】——第一个Flask项目

5.企业项目开发常用的方式

使用工厂模式创建Flask app,并结合使用配置对象与环境变量加载配置

使用配置对象加载默认配置使用环境变量加载不想出现在代码中的敏感配置信息 def create_flask_app(config): """ 创建Flask应用 :param config: 配置对象 :return: Flask应用 """ app = Flask(__name__) app.config.from_object(config)# 从环境变量指向的配置文件中读取的配置信息会覆盖掉从配置对象中加载的同名参数app.config.from_envvar("PROJECT_SETTING", silent=True) return app class DefaultConfig(object): """默认配置""" USER = 'ROOT' class DevelopmentConfig(DefaultConfig): DEBUG=True # app = create_flask_app(DefaultConfig)app = create_flask_app(DevelopmentConfig) @app.route("/") def index(): print(app.config['USER']) return "hello world"

好啦,文章到这里就结束啦! 【Flask框架②】——第一个Flask项目

推 荐:牛客题霸-经典高频面试题库

🌐 找工作神器-|笔试题库|面试经验|大厂面试题 👉 点击链接进行注册学习

免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。

您必须遵守我们的协议,如果您下载了该资源行为将被视为对《免责声明》全部内容的认可-> 联系客服 投诉资源
www.panoramacn.com资源全部来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。 敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:2640602276@qq.com
未经允许不得转载:书荒源码初雪模板-源码网每日更新网站源码模板! » 【Flask框架②】——第一个Flask项目
关注我们小说电影免费看
关注我们,获取更多的全网素材资源,有趣有料!
120000+人已关注
分享到:
赞(0) 打赏

评论抢沙发

评论前必须登录!

您的打赏就是我分享的动力!

支付宝扫一扫打赏

微信扫一扫打赏