2015-07-21 33 views
2

我想問如何將模型設置爲特定數據庫。 我還是Django的新手,在Django網站上閱讀Database Routing,我有2個模型,userModadminMod
userMod應該去數據庫userDB
adminMod應該去數據庫adminDB
但是當我遷移它時,兩個表都存在於兩個數據庫中。 我已經在meta上包含了app_label,但它仍然不起作用。 我使用Django 1.8將模型設置爲django中的特定數據庫


編輯: 我只是想它userDB的一段時間,最終將與adminDB使用它。 這是我的代碼:

routers.py

class router(object): 

def db_for_read(self, model, **hints): 
    if model._meta.app_label == 'userDB': 
     return 'userDB' 
    return None 

def db_for_write(self, model, **hints): 
    if model._meta.app_label == 'userDB': 
     return 'userDB' 
    return None 

def allow_relation(self, obj1, obj2, **hints): 
    if obj1._meta.app_label == 'userDB' or\ 
     obj2._meta.app_label == 'userDB': 
      return True 
     return None 

def allow_migrate(self, db, app_label, model=None, **hints): 
    if app_label == 'userDB': 
     return db == 'userDB' 
    return None 
+0

嗨,請插入您的代碼更清晰。閱讀此內容以改善您的問題,以便我們能夠更好地幫助您。 http://stackoverflow.com/help/mcve –

+0

你可以粘貼你的數據庫路由器的代碼? – kmmbvnr

回答

1

試試這個:

class userMod(models.Model): 
    name = models.CharField(max_length=120) 

    class Meta: 
     db_table='userDB' 
+0

嗨@Geo Jacob。謝謝你的建議,但不幸的是,這並沒有奏效。這兩個表仍然存在'userDB' – predator

+0

我沒有試過這個,但這可能對你有所幫助。 http://stackoverflow.com/questions/18547468/multiple-databases-and-multiple-models-in-django –

相關問題