Djangoの環境設定で行き詰った話。
まず、お久しぶりです。
約1ヶ月ぶりの更新です。えぇ、予想どおり三日坊主でした。地味に改名してます。
何もしてないわけでなく、逆にこの1ヶ月はものすごい濃い1ヶ月でした。
1ヶ月前の僕は鼻水垂らしながらWebフレームワークってなぁに~でしたが、今ではこんな便利なものがあるのか!と興奮しております。
と、いうわけでなぜかは分かりませんがPythonを触ってみたくなり、Djangoも触れてみよう!ということでいろいろ設定したんですが…
Djangoの環境設定で行き詰った話。
Python,Djangoのインストールを初めて全部自分で行いました。
テンションあげあげでやっぱインストールするならバージョンは超最新がイイッショー!!ってなって、
- Python 3.4.3
- Django 1.8.2
をインストールしたんです。
そして、DBの接続設定時に、MySQLを使いたくなり、いろいろと調べてみたら・・・
どうやらPython3.xはPython2で大活躍だったらしいpython-mysqlというものが使えないらしく、いろいろと調べたら
mysql-connector-python
というのがよさそうだなと思い、さっそくインストール。わくわく。
エラー、エラー、エラー。
DATABASES = { 'default': { 'ENGINE': 'mysql.connector.django', 'NAME': 'beginner', 'USER': 'bgnuser', 'PASSWORD': 'bgn1021', 'HOST': '', } }
ふむふむ、ENGINEに mysql.connector.django と書くわけね。
よし!python manage.py migrate!!
エラー。
Try using 'django.db.backends.XXX', where XXX is one of: u'base', u'mysql', u'oracle', u'postgresql_psycopg2', u'sqlite3' Error was: cannot import name BaseDatabaseFeatures
こういう風に書けと…よしよし、再度ENGINEの記述を編集して python manage.py migrate!!
エラー。
くー!!!!!!
mysql-connector-pythonのバージョンがだめなのか?(この時点では1.2.3でした)よーしアップグレードだ!!
エラー。
(この時点では2.0.3)このあたりからだんだんとイライラし始める。
しかし、なんとしてでも動かしたいがために、今日という今日は本気を出して、英語のサイトも毛嫌いすることなく読みに読み漁りました。
Django1.8のバグらしい。
1.8のバグのようですね。
MySQL Bugs: #76752: Connector/Python Django backend doesn't work with Django 1.8
また、自分と全く同じ人も発見しました。
It’s because you the mysql-connector-python doesn’t support Django 1.8 yet. But don’t worry, there’s an open ticket and they have already found a solution. Try:
$ pip install git+https://github.com/multiplay/mysql-connector-python
To install the development version of their package :-)
ほうほう、やっぱりバグですやん!、でも、心配しないで!と書かれている。
このパツキンチャンネーの言う通りに従います!!
エラー
もう・・・どうすればええんですか・・・
最終的に、Django1.7にしました…
なんとも悔しい結果ですが、もう自分の知識ではどうしようも無く、ここでポイっとしてしまうのもあれなんで、おとなしくバージョンを1.7にしました。
こればっかりは仕方ない… でも、1.7にしたら無事動いたので、やっぱり1.8のバグなんですね。
いろいろと勉強になったので、結果楽しかったです(3時間くらい格闘してたけど)
それでは!
チラ裏
最近、Atom使い始めました。
賛否両論あると思うんですけど、個人的にはsublimetextより好きですね。買ってくだせぇ~!のポップアップもでませんしね。