0
我想Django的由給定參數不管settings.py.
啓動時爲了這個目的使用特定的數據庫(sqlite
)爲默認啓動,我在manage.py
中添加了以下代碼,以便在啓動時可以使用參數設置settings.DATABASES
。如何讓Django的選擇一個特定的默認數據庫時,使用命令行參數
# manage.py
from myapp import settings
settings.DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(settings.DB_PATH, sys.argv[3]),
},
}
,但它不工作.... Django的訪問仍然在settings.py
代表我想這是因爲Django的已經有設置默認DB做之前,我改變settings.DATABASES在manage.py
源數據庫。
因此,更改沒有任何影響。
Django何時使用設置選擇默認數據庫? 如果我可以在Django選擇默認數據庫之前更改settings.DATABASES,我會工作,我認爲。
有什麼辦法可以在運行時更改默認數據庫嗎? 因此,即使Django選擇已經默認的數據庫,我可以改變它。
這並不意味着使用`model.objects.using('dbname')動態地更改數據庫。
爲什麼地球上你會做這樣的事情?你試圖解決的**真正**問題是什麼? –