Ⅰ 有沒有人嘗試python3+django1.6+mysql connector 1.1.3
改掉系統默認的sqlite3資料庫,
# Database
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
'ENGINE': 'django.db.backends.mysql',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'NAME':'djangoDB',
'USER':'root',
'PASSWORD':'123456',
'port':'3306',
}
}
然後啟動報錯,
ImportError: No mole named 'MySQLdb'
據說要裝MySQL-python
可是MySQL-python一直無法安裝成功。
又報錯ImportError: No mole named 'ConfigParser'
因為python3中叫做configparser,是小寫。
好吧,聽說不用MySQL-python可以用pymsql代替,然後就趕緊下載pip install pymysql
然後再啟動,還是不行啊,還是ImportError: No mole named 'MySQLdb'
這里說下MySQL-python吧。
MySQL-python的解釋看官方說法
MySQLdb is an interface to the popular MySQL database server for Python. The design goals are:
Compliance with Python database API version 2.0 [PEP-0249]
Thread-safety
Thread-friendliness (threads will not block each other)
MySQL-3.23 through 5.5 and Python-2.4 through 2.7 are currently supported. Python-3.0 will be supported in a future release. PyPy is supported.
說白了就是連接mysql的python介面,有了他就可以用python來操作資料庫了。類似java的JDBC那一套東西把。
Ⅱ Python3 django 使用model views查詢MySQL數據怎麼寫
from .models import MODEL(class name)
objs = MODEL.objects.get()或者filter()方法。
Ⅲ django怎麼使用本機mysql資料庫
step 1:
修改你的django project目錄下的settings.py 文件至如下所示:
其中,'NAME' 對應的 『db_name' 是你事先使用mysql
的命令行提示符創建的資料庫名稱。注意:在django使用資料庫之前,你必須先創建出資料庫,否則會報錯。'USER'對應的'username'
還有 'PASSWORD' 對應的『passwd'
就是你在mysql中創建的用戶名和密碼。如果你有多個的話,隨便填一個就好。'HOST'和'PORT'默認都可以不填。
題外話: 使用用戶名和密碼登錄mysql的方法:
首先,你需要進入 mysql/bin的目錄下,也可以在.bash_profile中設置環境變數:
PATH=/usr/local/bin:/usr/bin:/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/Cellar/mysql/5.6.22/bin/
再在prompt輸入 mysql -u username -p, 回車後再輸入 passwd即可
step 2:
然後,在manage.py路徑中使用python manage.py syncdb 試試,結果會提示你錯誤找不到 MySQLdb 這個mole, 為什麼呢, 因為 python manage.py syncdb 命令是這樣工作的:
1. 在project目錄的settings.py的INSTALLED_APPS元組中找到可能需要更新的APP。
2. 找到每一個APP目錄中的models.py (關系定義文件),並針對變化在資料庫中進行更新。
說了這么多,前面那個錯誤 找不到 mole MySQLdb 是什麼意思啊 ?
先給個圖,再解釋:
因為在models.py中定義關系使用的是python,而真正在資料庫中操作形成model當然一定要用sql語句,所以必須要有一些功能模塊
來把python語句轉化成sql語句。如果你使用sqlite的話,由於sqlite和轉化模塊都已經由python內置了,所以直接使用不會發生錯
誤。但是 」mysql語句的轉化模塊「 就需要你手動載入了,這些模塊放在 MySQL-python 中。
我是使用pip 安裝的:
安裝了之後,再使用 python manage.py syncdb就OK啦。
我使用的系統是 OS X,下面是 mysql 默認的安裝路徑
/usr/local/Cellar/mysql/5.6.22/
如果你想知道你的資料庫文件是放在哪裡的,你可以查看mysql_config文件中的ldata變數,這個變數的值就是 默認的資料庫文件夾存儲的路徑。 我的系統中,mysql_config的完整路徑是 :
/usr/local/Cellar/mysql/5.6.22/bin/mysql_config
Ⅳ Python+MySQL+Django+Apache開發詳細流程
1. 開發時候用的是django的開發伺服器(python manage.py runserver), 部署的時候才會用到apache
2. django有mysql的支持
3. 最後通常是用mod_python 或者 cgi方式部署到webserver上的
具體的可以看一眼django book:
網址:djangobook.py3k.cn/2.0/ 自己加http
Ⅳ 如何在Django1.6結合Python3.4版本中使用MySql
唉,最近趕了個新潮,用起了Python3.4跟Django1.6,資料庫依然是互聯網企業常見的MySql。
悲催的是在Python2.7時代連接MySql的MySQLdb還不支持Python3.4,還好,苦苦追問G哥終於找到一款代替品,而且效果不錯,這代替品就是:pymysql。
下載此物然後進行安裝,跟其它python第三包沒任何區別,一樣的安裝。
關於Django1.6中DATABASES的設置也是一樣不用做任何修改,跟以前MySQLdb的時候一樣,如下所示:
最關鍵的一點,在站點的__init__.py文件中,我們添加如下代碼:
1 import pymysql2 pymysql.install_as_MySQLdb()
做完上述動作後,即可在django中訪問mysql了。
Ⅵ 用python3、django框架和mysql怎麼做一個登錄驗證系統
直接
pipinstalldjango-allauth
Ⅶ 如何在Django1.7結合Python3.4版本中使用MySql
pymysql
詳情網路:jaket5219999 mysql
Ⅷ Django+python3.3 如何連接至mysql或者postgres 求教詳細方法
#
#settings.py里配置:
#
DATABASES={
'default':{
'ENGINE':'django.db.backends.mysql',#Add'postgresql_psycopg2','postgresql','mysql','sqlite3'or'oracle'.
'NAME':'dbname',#.
'USER':'uname',#Notusedwithsqlite3.
'PASSWORD':'pwd',#Notusedwithsqlite3.
'HOST':'127.0.0.1',#Settoemptystringforlocalhost.Notusedwithsqlite3.
'PORT':'3306',#Settoemptystringfordefault.Notusedwithsqlite3.
}
}
#
#用MySQLdb
#
conn=MySQLdb.connect(user='uname',db='dbname',passwd='pwd',host='127.0.0.1',use_unicode=True,charset='utf8')