さっしーブログ

埼玉県在住のシステムエンジニアです。基本的には技術的な内容を中心に発信していきます。

Windows環境でPython + DjangoにPostgresqlへ接続する方法

1.環境

  • Windows7 64bit
  • Python 3.5.2 32bit
  • Django 1.10
  • Postgresql 9.6 32bit
 

2.前提

以下のソフトウェアはインストールされており、Djangoプロジェクトも作成されているものとします。
また、Postgresqlはデータベースの作成まで済ませておいてください。
上記の内容の詳細はここでは割愛します。
 
  • Python 3.5.2 32bit
  • Django 1.10
  • Postgresql 9.6 32bit
 

3.手順

Djangoプロジェクトが正常に起動することを確認します。
確認が取れたら以下を実施していきます。
 

 3-1.psycopg2のインストール

  以下のサイトから「psycopg2 」のインストーラーをダウンロードしてインストールを行います。
  ※特に設定する必要はなくクリックして進めていき、インストール
 
  インストール後、以下のコマンドを実行して、エラーがでなければインストール成功
   
$ python -c "import psycopg2"
 

 3-2.Djangoプロジェクトフォルダ内の「settings.py」の修正

  「settings.py」を開き以下のように修正する。
  ★マークのところは各自の環境のものを設定
 
 DATABASES = {
         # 'default': {
         # 'ENGINE': 'django.db.backends.sqlite3',
         # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
         # }
           'default': {
           'ENGINE': 'django.db.backends.postgresql_psycopg2',
           'NAME': '[データベース名]',
           'USER': '[ユーザー名]',
           'PASSWORD': '[パスワード]',
           'HOST': '127.0.0.1',
           'POST': '5432'
         }
   }
 
※接続の設定の際には、テーブル作成権限を持っているユーザーを指定しないと実行時にエラーとなるので注意
 
 

 3-3.マイグレーションの実行

  Djangoプロジェクトフォルダ配下で以下のコマンドを実行する。
 
$ python manage.py migrate
 
  実行後、以下のような表示出れば成功。

f:id:y_saiki:20170411000015p:image

 
  以下のコマンドをたたき、正常にアプリケーションが起動できることも確認しておく。
 
  
$ python manage.py runserver