El CapitanでDjango環境を構築するまでの手順

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

Djangoでプロジェクトを作ろうということになり、環境を構築していたのですが、予想以上にハマりどころが多かったのでメモしておきます。

PR

環境

  • Mac OSX El Capitan ver10.11.1
  • Command Line Tools
  • Homebrew
  • mysql 14.14

構築する環境

  • Python 3.3.0
  • virtualenv
  • Django 1.7.3
  • mysql-connector-python 2.0.4

virtualenv

今回はPythonのバージョン管理ツールとして、virtualenvを使います。

インストール

以下でpyenvとvirtualenvをインストールします。

パスを通す

パスを通すため、.bashrcに以下を追記します。(zshを使っている場合は.zshrc)

ターミナルを開き直すか、以下のコマンドで有効化します。

Pythonのインストール

本来pyenvでは以下のコマンドで各バージョンのPythonをインストールします。

しかし、El Capitanでは次の2つのエラーが発生するためインストール出来ません。

  • Build failed: “ERROR: The Python zlib extension was not compiled. Missing the zlib?”
  • ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

それぞれの対処法を書きます。インストール方法だけを知りたい人は「まとめ」だけを読んでください。

Build failed: “ERROR: The Python zlib extension was not compiled. Missing the zlib?”

zlibが見つからないために起きるエラーです。zlibの場所を教えてあげるとこのエラーは出なくなります。

しかしまたもやエラーが発生します。

ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?

Opensslが見つからないために起きるエラーです。zlibと同様Opensslの場所を教えてあげるとこのエラーは出なくなります。

ただし、このコマンドだとzlibのエラーが発生し、無限ループとなります。

まとめ

ということで上記2つの合わせ技で以下のコマンドを入力します。

3.3.0だけでなく2系でもちゃんとインストール出来ます。

Django

環境の作成

Djangoプロジェクト用に環境を作成します。

インストール

workディレクトリに移動し(適宜読み替えてください)、環境をdjango_projectに設定します。その後、pipにてDjango 1.7.3をインストールします。

プロジェクト作成

プロジェクトを作成します。
django-admin.py startproject myproject

PR

アプリ作成

アプリを作成します。

ここでhttp://localhost:8000/にアクセスし、以下の画面が表示されていれば、とりあえずOKです。
runserver

MySQL

今回はこのDjangoプロジェクトをMySQLで動かします。色々調べた結果mysql-connector-pythonが一番良さそうだったのでこれを使ってみます。

下準備

まずは下準備としてMySQL側でデータベースを作成しておきます。

複数人で開発する場合、開発環境としてMySQLのrootパスワードを空にしておくと良いかもしれません。以下のコマンドでパスワードの変更が出来ます。New Password:と求められた際に、何も入力しないままEnterを押せばパスワードを空に出来ます。

ついでに書くと、pipでインストールしたパッケージはrequirements.txtにまとめるのが良いようです。

インストール

Djangoの時と同様にpipからインストールしますが、pipには登録されていないようなのでmysql-connector-python公式サイトのzipから展開します。

注)mysql-connector-pythonはDjango1.8では動きません。現状(2015/11/16)ではMySQLを使いたい場合はDjango1.7系を使うしかないようです。

Django側の設定

~/work/myproject/myapp/settings.pyのDATABASES部分を編集します。

ついでに日本語仕様にしておきましょう。

確認

http://localhost:8000/にアクセス出来ればOKです!

参考にしたサイト

DjangoでMySQLを使う – WinRoad徒然草
Python3.4でMySQLに接続してDjangoでも使ってみる – ハセテツラボ
Python Django入門 (2) Mac編 – Qiita
Djangoの環境設定で行き詰った話。 – 村長Xの奮闘記
Python Tips:ライブラリをまとめてインストールしたい – Life with Python
MySQLでrootのパスワードを設定する – (MySQL, Mac OS X) – プログラミング日誌

PR

この記事が気に入ったら
いいね ! しよう

Twitter で
  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。