Flask框架的搭建及入门

预备(虚拟环境的搭建)

 cd venv/Scripts
.\activate 进入虚拟环境
cd ../../
deactivate.bat 退出虚拟环境
pip install -r req_new.txt  指定文件下载

一.Flask搭建

所需下载的内部插件

快捷下载(将以下包放入txt文件中,加入到flask根目录下
运行 pip install -r ***.txt)
Flask==1.1.4
Flask-Caching==1.10.1
Flask-Cors==3.0.10
Flask-Migrate==2.7.0
Flask-RESTful==0.3.9
Flask-Script==2.0.6
Flask-SQLAlchemy==2.5.1
MarkupSafe==2.0.1
PyJWT==2.3.0
PyMySQL==1.0.2
qiniu==7.6.0
redis==4.2.2

二.Flask入门

Ss2.flask的必要元素

<1>.flask基本框架

#1
(导包)
from flask import Flask
#2
(实例化Flask对象)
app = Flask(__name__)
(定义函数及其路由)
@app.route("/hello")
def hello():
	return "hello world"
#3
(运行)
if __name__ == '__main__'
	app.run()

<2> 从对象中加载配置文件

  1. 在目录settings中创建配置文件 config.py
class DefaultConfig:
   # 属性名字 必须全部大写
   NAME = "zhangsan"
   DEBUG = True
  1. 根目录下创建app.py文件
from flask import Flask
from settings.config import DefaultConfig

app = Flask(__name__)
app.config.from_object(DefaultConfig)   # 从对象中加载配置

print(app.config)
if __name__ == '__main__':
     app.run()

注意!!!
此时运行代码会config到以下信息
DEBUG方法为开发者模式,设置成True可使运行自动刷新
在这里插入图片描述
<3> 从文件中加载配置文件

  1. 根目录下创建setting.py
随意写入参数
AGE="18"
  1. 根目录下创建app.py文件
from flask import Flask
from settings.config import DefaultConfig

app = Flask(__name__)
app.config.from_pyfile('setting.py')    # 从文件中加载配置

print(app.config)
if __name__ == '__main__':
     app.run()

<4> 从环境变量中加载配置文件

暂时没有掌握

三.设计模式简单导入

1.根目录下创建forest.py文件

class Animal():
    def do_say(self):
        pass


class Cat(Animal):
    def do_say(self):
        print("miaomiao")


class Dog(Animal):
    def do_say(self):
        print("wangwang")


class Forest():
    def say(self, animal_type):
        eval(animal_type)().do_say()


if __name__ == '__main__':
    a = input("请输入输入的动物类型: Cat or Dog")
    print("接收到的数据为:", a)

    Forest().say(a)

2.工厂模式创建APP

在根目录创建create_app()

from flask import Flask

# 创建flask对象
def create_app():
    flask_app = Flask(__name__)
    print("我被调用了")
    return flask_app

同级目录下创建app.py调用

from create_app import create_app
app = create_app()
if __name__ == "__main__":
     app.run()

四.路由的定义

路由的基本格式
@app.route("/hello",methods=["get","post"],endpoint="aaa")
def hello():
    return "hello"
  • url 路由路径
  • methods 请求方法
  • endpoint 别名(可有可无)
通过url-for 方法找到路由别名endpoint
@app.route("/path")
def get_path():
    u = url_for("aaa")
    print(u)
    return u
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值