[英]Django Project Multi-Database Config in settings.py
我目前正在使用用C#編寫的asp.NET內部網站,並在Django Web框架中重做它。 在確定了.NET站點正在使用的所有當前數據源之后,我開始配置和測試我從Django框架內連接到這些數據庫的能力。
問題:每當我嘗試連接到未定義為默認數據庫的任何數據庫時,都無法連接。 此外,我是無法連接到任何數據庫,只有當它被定義為不是默認。
為了進一步說明這一點,我將提供編輯過的示例:
DATABASES = {
'default': {
'ENGINE': 'postgresql_psycopg2',
'NAME': 'postgres',
'USER': 'postgres',
'PASSWORD': '',
'HOST': '',
'PORT': '',
},
'mssql': {
'ENGINE': 'sql_server.pyodbc',
'DATABASE_ODBC_DSN': 'name_of_sql_server',
'DATABASE_NAME': 'Logs',
'DATABASE_USER': r'user_name',
'DATABASE_PASSWORD': 'password',
'DATABASE_OPTIONS': {
'driver': 'sql_server_driver',
'dsn': 'MSSQL_Logs',
},
}
}
如果我注釋掉第一個默認數據庫定義,並將mssql數據庫的名稱更改為default,則可以通過以下方式訪問dbshell:
manage.py dbshell
但是,如果我嘗試通過以下方式直接訪問上面定義的mssql數據庫:
manage.py dbshell mssql
我收到一個錯誤:
TypeError: handle() takes exactly 1 argument (7 given)
幾乎好像無法正確解析該定義。 所以我的問題基本上是這樣的:將它們配對在一起時,是否會錯誤地定義數據庫?
根據此鏈接https://docs.djangoproject.com/en/dev/ref/django-admin/#django-admin-dbshell ,您應該使用python dbshell --database mssql
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.