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:    #第一个参数是要改变连接的表名,第二个是要连接的已经定义好的数据库
上一篇下一篇

猜你喜欢

热点阅读