既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
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 Flask
app = 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源文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/17ba2169709646c2ac5dd8141c34a306.png)
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才可以访问到图片
![在这里插入图片描述](https://img-blog.csdnimg.cn/9102231b3b654d1991d06d00273000f4.png)
app.run参数
可以指定运行的主机IP地址,端口,是否开启调试模式
app.run(host=“0.0.0.0”, port=5000, debug = True)
IP:0.0.0.0 代表当前计算机所有的IP地址
**关于DEBUG调试模式**
![在这里插入图片描述](https://img-blog.csdnimg.cn/f0e91ea28cc6407f96883c26f0e10e4b.png)
1.程序代码修改后可以自动重启服务器
2.在服务器出现相关错误的时候可以直接将错误信息返回到前端进行展示
![在这里插入图片描述](https://img-blog.csdnimg.cn/49647cc94b61473997fe47853077125d.png)
## 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:25
from flask import Flask
class 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)
![在这里插入图片描述](https://img-blog.csdnimg.cn/3638906f9b4c4a19be34294e72f0bd87.png)
这样的好处是可以在项目开发中来继承和重写:
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:25
from flask import Flask
app = 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)
![在这里插入图片描述](https://img-blog.csdnimg.cn/946d60830ade49f5a46fe38bb0575a94.png)
### 3.从环境变量中加载
先配置环境变量
![在这里插入图片描述](https://img-blog.csdnimg.cn/87ce64945c2c4d8ba6dffd9e1c17ab09.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/e1b8d803f97843e79084ca29119d589e.png)
**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:50
from flask import Flask
app = 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中的运行时设置环境变量的方式加载
使用非常少
![在这里插入图片描述](https://img-blog.csdnimg.cn/f95b5c54492f4d3893c262db39a85a34.png)![在这里插入图片描述](https://img-blog.csdnimg.cn/62be4127552148d991ff724048bcc2bc.png)
### 5.企业项目开发常用的方式
使用工厂模式创建Flask app,并结合使用配置对象与环境变量加载配置
* 使用配置对象加载默认配置
* 使用环境变量加载不想出现在代码中的敏感配置信息
def create_flask_app(config):
“”" 创建Flask应用 :param config: 配置对象 :return: Flask应用 “”"
app = Flask(name)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
app = Flask(__name__)
[外链图片转存中…(img-SuRAN8vn-1714854418806)]
[外链图片转存中…(img-042Akd6W-1714854418807)]
[外链图片转存中…(img-heHtiJfY-1714854418807)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新