2024年【Flask框架】——第一个Flask项目(1),2024年最新附赠复习资料

img
img
img

既有适合小白学习的零基础资料,也有适合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)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

app = Flask(__name__) 

[外链图片转存中…(img-SuRAN8vn-1714854418806)]
[外链图片转存中…(img-042Akd6W-1714854418807)]
[外链图片转存中…(img-heHtiJfY-1714854418807)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的前后端分离的项目示例,使用 Python Flask 框架和 Vue.js 前端框架。 1. 环境配置 首先,需要安装 Python 3 和 Node.js。 然后,使用以下命令安装 Flask 和相关扩展: ``` pip install flask flask-cors flask-restful ``` 2. 后端开发 在项目根目录下创建 `app.py` 文件,编写以下代码: ```python from flask import Flask, jsonify from flask_cors import CORS from flask_restful import Api, Resource app = Flask(__name__) api = Api(app) CORS(app) class HelloWorld(Resource): def get(self): return jsonify({"message": "Hello, World!"}) api.add_resource(HelloWorld, "/api/hello") if __name__ == "__main__": app.run(debug=True) ``` 这个代码创建了一个 Flask 应用,同时使用 Flask-RESTful 扩展创建了一个 `/api/hello` 的 API,返回一个 JSON 格式的消息。 3. 前端开发 在项目根目录下,使用以下命令初始化一个 Vue.js 项目: ``` vue create frontend ``` 然后,进入 `frontend` 目录,使用以下命令安装 axios: ``` npm install axios --save ``` 接着,创建一个 `src/App.vue` 文件,编写以下代码: ```html <template> <div> <h1>{{ message }}</h1> </div> </template> <script> import axios from "axios"; export default { data() { return { message: "", }; }, mounted() { axios.get("http://localhost:5000/api/hello").then((res) => { this.message = res.data.message; }); }, }; </script> ``` 这个代码创建了一个 Vue.js 应用,通过 axios 发送 HTTP 请求到 Flask 后端,获取 `/api/hello` 的响应,并显示在页面上。 4. 运行项目项目根目录下,使用以下命令分别启动 Flask 和 Vue.js 服务器: ``` python app.py ``` ``` cd frontend npm run serve ``` 然后,打开浏览器,访问 `http://localhost:8080`,即可看到页面上显示的消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值