美文网首页
flask基础(一)

flask基础(一)

作者: 憧憬001 | 来源:发表于2019-01-23 20:36 被阅读0次

    对于比较小的项目,可以将全部代码写在manage.py文件中,
    但是项目比较大的话,全部放在manage.py文件中就显得太杂、太乱了
    所以为了方便管理和阅读,我们可以将它向Django一样细分一下每个版块的作用

    一、

    • 1.创建一个工程文件夹 例如:app
      在app目录下创建一个init.py文件,因为我们需要导包
      然后就可以自己定义app中的内容
      例如: 创建一个 models.py 文件,我们可以在里面定义需要的模型
      创建一个views.py 文件,定义视图和路由
      (当然这里的命名可以任意命名,只要你高兴就好,但一般需要一个见名知意的比较好...)

    在项目目录创建一个requirement.txt文件
    在文件中写入需要的库名
    flask
    flask-script
    flask-blueprint
    在Terminal中执行下面命令就可以一起安装了
    pip insatll -r requirement.txt

    • 先来填充manage.py文件的内容
    # 导入flask
    from flask import Flask
    # flask_script
    from flask_script import Manager
    
    
    # 获取方式对象,(就随意)命名为app
    app = Flask(__name__)
    
    # 第二步:注册蓝图对象
    app.register_blueprint(blueprint=blue, url_prefix='/app')
    
    # 管理flask应用对象
    manage = Manager(app)
    
    # 启动
    if __name__ == '__main__':
        manage.run()
        # 启动命令:python manage.py -h 0.0.0.0 -p 80 -d
        # -h:IP地址
        # -p:端口
        # -d:debug模式
    
    
    • views.py文件
    from flask import Blueprint
    
    # 定义蓝图对象
    blue = Blueprint('first',__name__)
    
    # 蓝图对象.route(路由)
    @blue.route('/hello/')
    def hello():
        return 'hello Flask'
    
    

    二、连接数据库

    • 1.连接redis
      安装并导入redis、flask-session
      在manage.py中增加如下配置
    # 配置flask-session库,存储数据到redis中
    app.config['SESSION_TYPE'] = 'redis'
    # 阿里云
    app.config['SESSION_REDIS'] = redis.Redis(host='IP地址', port=端口(默认6379), password='密码')
    # 本地(一般不需要密码)
    # app.config['SESSION_REDIS'] = redis.Redis(host='127.0.0.1', port=6379)
    
    # 初始化配置信息
    # 第一种方式
    # Session(app)
    # 第二种方式
    se = Session()
    se.init_app(app)
    
      1. 连接mysql
        安装并导入pymysql(python3.x 中需要手动导入MySQL数据库驱动)
        在manage.py中增加如下配置
    app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:数据库密码@IP地址/数据库名'
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    db.init_app(app)
    

    相关文章

      网友评论

          本文标题:flask基础(一)

          本文链接:https://www.haomeiwen.com/subject/ygwsjqtx.html