daemonfreaks.com

Djangoを使ってみてる その2

posted by jun-g at Sun, 23 Sep 2007 20:54 JST

チュートリアル通り進めた場合、チュートリアルその3のURLconf の脱カップリングで行った内容だけだとDjangoアプリケーションの切り離しは出来ない。何故ならviews.pyに

from mysite.polls.models import Poll

と書いてしまっているから。これだとmysite以外のプロジェクト内に移動した場合にコードの修正が発生してしまう。完全に切り離すには、

from polls.models import Poll

と書かなければならないと思う。チュートリアルその4まで見たけどこの事についてはどこにも触れられていないっぽい。誰でもすぐ気付くからかな?

ちなみに、Django付属の開発用サーバではimport文を上記のように書き換えてもそのまま動くけど、Apache+mod_python上ではPythonPath上にpolls.modelsが見つからない、というエラーになった。ドキュメントのmod_python で Django を動かすには、DjangoプロジェクトおよびDjangoアプリケーションそれぞれの親ディレクトリをPythonPathに含める必要がある、と書いてあった。なので例えば/home/jun-g以下にチュートリアル通りの以下のようなディレクトリ構成で配置した場合、

mysite
  |
  +-- polls

PythonPathには以下のように書く必要がある。

PythonPath "['/home/jun-g', '/home/jun-g/mysite'] + sys.path"

っていうポイントにちょっとだけ引っかかった。

後、作成した自分用のアプリの入力フォーム生成とデータのバリデーションをnewformsを使うように修正した。泥臭いコードがかなり減ったけど、もうちょっと適切なWidgetを適用すればまだまだ整理できそうな感じ。そういえば、ドキュメントにoldformsの事は知らなくて良い、と書かれていたので、oldformsには一切触れず。

あ、generic viewsもmiddlewaresもまだ全然触っていない。これは次のアプリで使ってみることにしよう。後、動作環境をApache+mod_wsgi上に移す、とかもやりたい。

posted by Trackback from 常山日記 at Mon Sep 24 01:00:42 2007

Blog: [Django][本棚開発ログ] Django でユーザ管理をアウトソース Djangoを使ってみてる その2 Start django Python: Pylons - jQuery Autocomplete from returned AJAX XML: Example XML DATA Mercurial を Ubuntu で使う [Eclipse] Eclipseのインストール [Python][wxPyt

Comments / TrackBacks

TrackBack URL for this entry: https://www.daemonfreaks.com/blog/trackback/200709232022








コメントスパム対策の為、各入力項目へのURL記載は全てリジェクトしてます。ごめんなさい。