Flask项目目录一般规范

开始
摘要由CSDN通过智能技术生成

一、项目需要的基本库

Flask-SQLAlchemy:SQLAlchemy与Flask的粘合剂
Flask-script:生成命令组件,cmd命令行写入命令运行,例子:python manage.py runserver
	-- 增加 runserver 命令
	-- 自定义命令
Flask-migrate:数据迁移组件
pipreqs:自动查找项目中使用的组件和模块,版本
	-- 命令:pipreqs ./ --encoding=utf8
	-- 命令:pip install -r requirements.txt  # 安装所有相关依赖
	
vitualenv:用来建立一个虚拟的python环境,一个专属于项目的python环境。
	-- 命令:virtualenv my_project_env # 搭建虚拟环境
	-- 命令:virtualenv -p /usr/bin/python2.7 my_project_env # 选择运行环境
	-- 命令:source my_project_env/bin/activate # 使用虚拟环境
	-- 命令:deactivate # 停止虚拟环境
	-- 创建继承系统第三方库的虚拟环境:如果已经安装了一些第三方库在系统的 site-packages 目录中,
		希望在新的虚拟环境中也可以使用它们,那么你可以使用 --system-site-packages 选项:
		virtualenv --system-site-packages env
	
虚拟环境集中管理库:
virtualenvwrapper:
  鉴于virtualenv不便于对虚拟环境集中管理,所以推荐直接使用virtualenvwrapper。 
  virtualenvwrapper提供了一系列命令使得和虚拟环境工作变得便利,它把你所有的虚拟环境都放在一个地方。
  安装virtualenvwrapper(确保virtualenv已安装)
		pip install virtualenvwrapper
		pip install virtualenvwrapper-win # Windows使用该命令
  安装完成后,在 vim ~/.bashrc 以下内容添加到环境变量中:
		export WORKON_HOME=~/Envs
		source /usr/local/python3/bin/virtualenvwrapper.sh  
  第一行:virtualenvwrapper存放虚拟环境目录
  第二行:virtualenvwrapper.sh会安装到/usr/local/路径下的python bin目录下。
  配置完成运行:source ~/.bashrc # 读入配置文件,立即生效
virtualenvwrapper基本使用:
1.创建虚拟环境 mkvirtualenv
	mkvirtualenv venv   
	  这样会在WORKON_HOME变量指定的目录下新建名为venv的虚拟环境。
	  若想指定python版本,可通过"--python"指定python解释器
	mkvirtualenv --python=/usr/local/python3.5.3/bin/python venv
2. 基本命令
  查看当前的虚拟环境目录:
		[root@localhost ~]# workon
		py2
		py3
  切换到虚拟环境:
		[root@localhost ~]# workon py3
		(py3) [root@localhost ~]# 
  退出虚拟环境:
		(py3) [root@localhost ~]# deactivate
		[root@localhost ~]# 
  删除虚拟环境:
		rmvirtualenv venv
   3. 其他命令:
		lsvirtualenv    #列举所有的环境。
		cdvirtualenv    #导航到当前激活的虚拟环境的目录中,比如说这样您就能够浏览它的 site-packages。
		cdsitepackages   # 和上面的类似,但是是直接进入到 site-packages 目录中。
		lssitepackages     #显示 site-packages 目录中的内容。


Linux环境下python虚拟环境virtualenv安装和使用

二、Flask-SQLAlchemy 使用

SQLAlchemy操作数据库的ORM组件

2.1、Flask-SQLAlchemy 配置 Flask settings
class DBConfig(object):
	# 数据库连接的地址
	SQLALCHEMY_DATABASE_URI= 'mysql+pymysql://root:root@127.0.0.1:3306/flask_sql?charset=utf8'
	SQLALCHEMY_BINDS= 
	SQLALCHEMY_NATIVE_UNICODE= 
	SQLALCHEMY_ECHO= 
	SQLALCHEMY_RECORD_QUERIES= 
	# 数据库连接个数
	SQLALCHEMY_POOL_SIZE= 10
	# 数据库延迟响应时间“秒”
	SQLALCHEMY_POOL_TIMEOUT= 30
	SQLALCHEMY_POOL_RECYCLE= 
	# 数据库连接最大超出个数
	SQLALCHEMY_MAX_OVERFLOW= 5
	SQLALCHEMY_COMMIT_ON_TEARDOWN= 
	SQLALCHEMY_TRACK_MODIFICATIONS= 
2.2、Flask-SQLAlchemy 创建数据表
# 创建的步骤
1、__init__.py 导入 Flask-SQLAlchemy 并实例化 Flask-SQLAlchemy
	PS:必须在蓝图导入的上面;
		必须导入 from .models import * 。
	from flask_sqlalchemy import SQLAlchemy
	db = SQLAlchemy()
	导入 Flask 蓝图
	from .models import *
2、初始化 app 因为要读取app中的配置文件
	db.init_app(app)
3、在配置文件中写入配置
4、创建 models.py (创建数据表)
	app 文件夹下创建 models.py 文件
5、生成表(使用app上下文)
	from flask05 import db,create_app
	app = create_app()
	app_ctx = app.app_context() # app_ctx = app/g
	with app_ctx: # with 自动调用 __enter__,通过 LocalStack 放入 local 中
	    db.create_all()  # 调用 LocalStack 放入 Local 中获取app,再去app中获取配置
6、基于 ORM 对数据库进行操作
	引入:
		from app 文件夹 import db
		from app 文件夹 import models
		db.session.add() # 给表中添加数据
		db.session.remove() # 关闭数据连接
2.3、常用的 SQLAlchemy 语句
2.3.1、常用的SQLAlchemy查询过滤器
过滤器 说明
filter() 把过滤器添加到原查询上,返回一个新查询
filter_by() 把等值过滤器添加到原查询上,返回一个新查询
limit 使用指定的值限定原查询返回的结果
offset() 偏移原查询返回的结果,返回一个新查询
order_by() 根据指定条件对原查询结果进行排序,返回一个新查询
group_by() 根据指定条件对原查询结果进行分组,返回一个新查询
2.3.2、常用的SQLAlchemy查询执行器
方法 说明
all() 以列表形式返回查询的所有结果
first() 返回查询的第一个结果,如果未查到,返回None
first_or_404() 返回查询的第一个结果,如果未查到,返回404
g
  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值