Flask中要切换数据库存储数据
2017-08-09 本文已影响0人
gogoforit
切换数据存储
flask-mongoengine好像在配置文件中配置好了以后,就不能改变数据库配置了,所以我直接使用mongoengine来配置的
先申明连接数据
connect(db=remote_db,
host=remote_host,
username=remote_username,
password=remote_password,
alias='remote_db')
connect(db=local_db,
host=local_host,
username=local_username,
password=local_password,
alias='local_db')
alias作为连接区分,一个本地数据,一个远程数据库,并且在class类中要加上meta参数,顺便一说,如果要改变储存的collection可以在meta里面改参数
class Student(Document):
name = StringField(required=True)
student_id = StringField(required=True)
class_id = StringField(required=True)
address_mac = StringField(required=True)
meta = {'db_alias': 'local_db', 'collection': 'student_info_remote'}
使用switch_db改变连接的数据库
with switch_db(Student, 'remote_db') as Student: #第一个参数是要改变连接的表名,第二个是要连接的已经定义好的数据库