flask框架入门级基础
2018-05-14 本文已影响0人
裴general
摘要
flask框架是一个微框架,即:
微框架中的“微”意味着 Flask 旨在保持核心简单而易于扩展。Flask 不会替你做出太多决策——比如使用何种数据库。而那些 Flask 所选择的——比如使用何种模板引擎——则很容易替换。除此之外的一切都由可由你掌握。如此,Flask 可以与您珠联璧合。
1.使用pycharm创建一个flask项目
这里需要提前创建一个虚拟环境
- 创建虚拟环境 virtualenv
(1)安装虚拟环境 pip install virtualenv
(2)创建虚拟环境文件夹: virtualenv --no-site-packages +文件夹名(flask)
(3)进去虚拟环境文件夹启动虚拟环境: 进入 flsak / Scripts ,启动activate
(4)下载相关的包 flask等 -
创建flask项目
image.png
2.运行初始环境
默认会在127.0.0.1:5000打印出hello, world
3.功能介绍
- 配置路由@app.route(' ')
@blue.route('/getfloat/<float:price>/')
def hello_float(price):
return 'float: %s ' % price
- 路由可接受的类型包括整形,浮点型,字符型等, 在路径的后面加入相关的内容
通用型 例:127.0.0.0:5000/helloint/feifei/
@blue.route('/hello/<name>/')
def hello_man(name):
print(type(name))
return 'hello:%s type:%s' % (name, type(name))
整形: 例:127.0.0.0:5000/helloint/123/
@blue.route('/helloint/<int:id>/')
def hello_int(id):
return 'hello %d' % id
浮点型 例127.0.0.0:5000/helloint/123.123/:
@blue.route('/getfloat/<float:price>/')
def hello_float(price):
return 'float: %s ' % price
字符型 例:127.0.0.0:5000/helloint/salabvnkamnab/
@blue.route('/getstring/<string:opreate>/')
def hello_string(opreate):
return 'string: %s' % opreate
路径 127.0.0.0:5000/helloint/sal/ubl/safsaf/
@blue.route('/getpath/<path:url_path>/')
def hello_path(url_path):
return 'path: %s' % url_path
uuid型(类似加密) 例127.0.0.0:5000/helloint/123/
随机输出字符
@blue.route('/getuuid/')
def hello_uuid():
a = uuid.uuid4()
return str(a)
uuid型(类似解密) 例:127.0.0.0:5000/ccfffe97-a89f-40dc-994b-a62ddf10e7d7/
@blue.route('/getbyuuid/<uuid:uu>/')
def hello_push_uuid(uu):
return 'uu: %s' % uu
- 加载html
使用render_templates函数 或者 sendfile函数
html文件存放在Templates文件里
@blue.route('/index/')
def index():
# return render_template('hello.html')
return send_file('hello.html')
- 加载css,
在html文件里, 使用link来加载
css文件存放在static文件里
<link rel="stylesheet" href="/static/hello.css">
- 写入请求方法
@blue.route('/', methods=['POST', 'GET'])
def hello_world():
# 视图函数
return 'Hello World!'
4.配置不同的端口,debug, 网址等
app.run(debug=True, port='8000', host='127.0.0.1') # 启动项目,debug=True表示会显示具体错误,
# 可以指定8000, host指定可以访问的ip地址
5.将flask文件配置成类似django文件, 使用蓝图Blueprint
- 创建应用APP
(1)APP中创建init.py 和 views.py
(2)配置views.py
from flask import render_template, send_file
from flask import Blueprint
blue = Blueprint('first', __name__)
@blue.route('/', methods=['POST', 'GET'])
def hello_world():
# 视图函数
return 'Hello World!'
(3)配置init文件, 定义创建app的方法
from flask import Flask
from App.views import blue
def create_app():
app = Flask(__name__)
app.register_blueprint(blueprint=blue)
return app
- 工程文件 将主文件名改为manage.py, 并修改配置
创建文件夹APP,,导入views方法中的create_app
创建Manager实例
运行实例
from flask_script import Manager
from App import create_app
app = create_app()
manager = Manager(app=app) # 交由管理
if __name__ == '__main__':
manager.run()
-
配置run文件
-p 端口 -d 是否启动debug(写上为真) -h 哪些可以访问
image.png
image.png