django中配置多個mongodb數據庫


    在Djnago中使用MongoDB數據庫時,使用mongoengine模塊。在settings中配置數據庫連接如下:

    

from mongoengine import connect
connect('dbname1', host='127.0.0.1', port=27017)

其中的dbname1為要連接的mongodb數據庫名字,host為mongodb數據庫ip,port為相應的端口。

    上面為單個數據庫的配置,如果要配置多個數據庫,一要在settings中增加數據庫連接;二要在models中定義的表中指明使用的數據庫。

    settings配置如下:

    

from mongoengine import connect
connect('dbname1', host='127.0.0.1', port=27017, alias='default')
connect('dbname2', host='127.0.0.1', port=27017, alias='db2')

    其中增加了一個參數alias,用於給多個數據庫取別名,以方便在models的表中指定要使用的數據庫,其中必須有一個default。不指定表使用庫時,默認使用default庫。

    settings設置好之后,models的表中配置如下:

from mongoengine import *
class Test(Document):
    name = StringField()
    age = IntField()
    
    meta = {'db_alias': 'db2'}

   設置表要使用的庫,添加元素meta,指定db_alias(key)的value值就可以,其中的value值為settings配置的數據庫別名。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM