2016-08-18 58 views
0

我試圖建立連接到遠程MySQL數據庫一個Django應用程序。我目前在我的venv中安裝了Django == 1.10和MySQL-python == 1.2.5。在settings.py我已經添加了以下到數據庫變量:如何Django的配置以訪問遠程MySQL數據庫django.contrib.sites.RequestSite模塊缺失

'default': { 
    'ENGINE': 'django.db.backends.mysql', 
    'NAME': 'db_name', 
    'USER': 'db_user', 
    'PASSWORD': 'db_password', 
    'HOST': 'db_host', 
    'PORT': 'db_port', 
} 

我得到的錯誤

from django.contrib.sites.models import RequestSite 

當我運行python manage.py遷移

我是一個完整的初學者時它涉及到Django。是否有一些我缺少的步驟?

編輯:我也通過brew安裝mysql-connector-c edit2:意識到我只需要通過將MySQLdb導入文件來連接到數據庫。很抱歉對於這個誤會。

+0

嗨,你能解釋一下,更準確地說,你做了什麼? '蟒蛇manage.py makemigrations'前應'migrate' – karlosss

+0

我不完全相信相關的信息,告訴你將要誠實恕我直言執行。當我運行makemigrations時,我收到一個類似的錯誤,說無法找到RequestSite。我也包括「django.contrib.sites」到settings.py – pauld

+0

的安裝的應用程序部分,我需要寫在models.py模型模仿分貝我試圖連接的結構? – pauld

回答

0

這是文檔,你應該看看這個連接到數據庫和Django的是怎麼做的,從你給我們,只要你的參數是正確的,你應該連接到數據庫,但一個很好的確認會inspectdb工具。

https://docs.djangoproject.com/en/1.10/ref/databases/

此向您介紹如何從SQL數據庫導入模型:

https://docs.djangoproject.com/en/1.10/howto/legacy-databases/

要回答在評論你的問題

「 自動生成模型

Django自帶了一個工具,叫做inspectdbŧ帽子可以通過內省現有數據庫來創建模型。您可以通過運行這個命令來查看輸出:

python manage.py inspectdb 

保存此通過使用標準的Unix輸出重定向文件:

python manage.py inspectdb > models.py 

1

你看到的錯誤無關與你的數據庫設置(假設你真正的代碼具有實際的數據庫名稱,用戶名和密碼)或連接。你是不是從正確的位置導入RequestSite。

更改(只要您有這一套)來源:

from django.contrib.sites.models import RequestSite 

到:

from django.contrib.sites.requests import RequestSite