• 2008-04-09 01:16:37

  • by makoto tsuyuki

  • DjangoをGoogle App Engineで動かす

    いくつか、はまりどころをメモ

    前提、

    djangoはsvn版を使う(rev.7400くらい)

    Djangoアプリケーションのプロジェクト名はspam

    その中のアプリケーション名はegg

      django-admin.py startproject spam
          cd spam
          ./manage.py startapp egg

    Djangoのプロジェクトとアプリケーションができる。実際はDjangoのsvn版をもってきてspamディレクトリの中に置いてあるので、ごにょごにょとファイルの場所を移したりした。

    ピクチャ 1

    Google App EngineのArticleにある Djangoの動かし方 を見ながら、app.yamlとmain.pyを作ったり、settings.pyを修正したりした。

    で、ここに罠があって、なんだかエラーに出くわすことになる。

    まず、main.pyでlog_exceptionなんて無いよっていうエラー。そんな関数はimportしてないから当然。dispatcherに登録してるとこ ろ自体をコメントアウト。そのうち適切な物を作る。

    次に、spam.urlsがimportできないって言われる。django-admin.pyでプロジェクトを作ると、 プロジェクト名.urls が ROOT_URLCONF に書き込まれた状態でsettings.pyが生成される。ROOT_URLCONFを urls に修正してやる。

    とりあえず Djangoのwelcomeページ まではたどり着けるようになる。

    きっとはまり道は続く…

  • みなさんのコメント
    • 2008-04-09 02:10:22 voluntas

      もう一個フォルダの階層を増やして、project/spam とかにするとスマートに行きましたよ。

    • 2008-04-10 10:43:55 makoto

      あれー?それもやったんだけどなぁ。
      もう一度試してみよう。