読者です 読者をやめる 読者になる 読者になる

Windows7 x64 で、GAE/P(1.7.0) + Django 1.3 の環境を構築する

GoogleAppEngine Python

最近は環境構築してばかりだが、今回はGAE/P + Django1.3の構築について。
GAEではPython2.7が使えるようになったり、Django1.3が使えるようになったりしている。
そのため、古いサイトを参考にしたりするとハマったりするので、自分用のメモ。


※2012/08/02 追記
Djangoのインストールされていない環境だと、Djangoプロジェクトの作成時にエラーとなるため、Djangoのインストールを追記。
エラーの内容は、以下

<プロジェクトフォルダ>>"C:\Program Files (x86)\Google\google_appengine\lib\django_1_3\django\bin\django-admin.py" startproject mysite
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\lib\django_1_3\django\bin\django-admin.py", line 2, in
from django.core import management
ImportError: No module named django.core

※2012/08/02 追記ここまで


■環境

■構築手順

1.Python2.7.2のインストール

Pythonのサイトより、Windows X86-64 MSI Installer (2.7) をダウンロードし、インストール。
Python - Python2.7 Download

2.Google App Engine SDK for Python のインストール

Google Developersより、GoogleAppEngine-1.7.0.msi をダウンロード・インストール。
Google App Engine - Downloads

3.Djangoのインストール

GAE用のDjangoSDKに含まれているものの、プロジェクト作成時にdjango.coreが必要となるため、
自分のPythonにもDjangoをインストールしておく。


Djangoを公式ページよりダウンロード。
インストール対象は、GAEのDjangoのバージョンに合わせ、「Django 1.3.3: Django-1.3.3.tar.gz」。
Django - Download


インストール方法は、以下を参照。
Python Web - Djangoインストール



4.プロジェクトの作成

Djangoを使うため、Google App Engine LauncherからNew Createする方法は使いづらい。
そのため、以下のページを参考にセットアップ。以下はほとんどそのまま。
参考:Surfing the Tech World - Using Django-1.2 on Google App Engine with Python-2.7 runtime


(1).プロジェクトフォルダの作成
  任意の場所に作成


(2).Djangoプロジェクトの作成
  コマンドプロンプトを利用して、1.のフォルダに移動して、作成する(UAC関連を避けるため、管理者コマンドプロンプトを使用した)。
  Django自体は、Google App Engine SDK に含まれるため、別途ダウンロード・インストールする必要はない。

<プロジェクトフォルダ>>"C:\Program Files (x86)\Google\google_appengine\lib\django_1_3\django\bin\django-admin.py" startproject mysite


(3).app.yamlの作成
  参考URLのもの、ほぼそのまま。UTF-8、BOMなしで保存。
  Djangoのバージョンは「1.3」へと変更する。
  任意のアプリケーション名は、大文字などの禁則文字を使うと、「no selected projects are running so we have nothing to browse」エラーで起動しない。

application: <任意のアプリケーション名>
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
  script: main.app
  
libraries:
- name: django
  version: "1.3"


(4).main.pyの作成
  これはそのまま。UTF-8、BOMなしで保存。

import os
# specify the name of your settings module
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'

import django.core.handlers.wsgi
app = django.core.handlers.wsgi.WSGIHandler()


(5).Google App Engine Launcher への登録
  File > Add Existing Application... にて、上記1.で作成したプロジェクトフォルダを指定して登録


(6).起動
  LauncherでRun起動後、「localhost:<ポート>」で起動すると、

It worked!
Congratulations on your first Django-powered page.

  のようなページが表示されれば、成功。