イアンです。 django は PHPと違って /path/to/file
で叩いても、ファイルをダウンロードできませんので、ローカル開発の場合は、普段に settings.py で MEDIA_URL と
MEDIA_ROOTを設定して、ロカール開発サーバでダウンロードすることにします。
urls.py の中にこんな感じです。
if settings.DEBUG:
urlpatterns += patterns('',
(r'^static/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT}),
)
ドキュメントをご参照してください。
http://djangoproject.jp/doc/ja/1.0/howto/static-files.html
しかし、この方法は最適じゃないので、本番環境を構築する時に、ウェブサーバでstaticファイルの設定をするほうがいいです。apacheであろうか、lighttpdであろうか、nginxであろうか、設定する方法が様々なので、ウェブサーバのドキュメントを見てください。
イアン。
2009/11/15 hasebe <has...@vega.aichi-u.ac.jp>:
--
=======================================
株式会社ビープラウド イアン・ルイス
〒150-0012
東京都渋谷区広尾1-11-2アイオス広尾ビル604
email: ianm...@beproud.jp
TEL:03-5795-2707
FAX:03-5795-2708
http://www.beproud.jp/
=======================================
長谷部です。イアンさんご返事有り難う。
> イアンです。 django は PHPと違って /path/to/file
> で叩いても、ファイルをダウンロードできませんので、
> ローカル開発の場合は、普段に settings.py で MEDIA_URL と
> MEDIA_ROOTを設定して、ロカール開発サーバでダウンロードすることにします。
>
> urls.py の中にこんな感じです。
>
> if settings.DEBUG:
> urlpatterns += patterns('',
> (r'^static/(?P<path>.*)$', 'django.views.static.serve',
> {'document_root': settings.MEDIA_ROOT}),
> )
>
私に静的ファイルという概念が殆ど無かったことがトラブルの原因でした。
上に示されたコードを試してうまく動作しましたので自分の誤りが分りました。
> ドキュメントをご参照してください。
> http://djangoproject.jp/doc/ja/1.0/howto/static-files.html
はい。思えば django は動的ファイル(という用語があるかどうか知りませんが template
を経由してその都度生成されるファイル)の取扱いの為にこそ生れて来たわけであり、従って
静的ファイルには重きをおかないの合理的な解決と理解できます。
だが、初心者には思いがけない落し穴です。
> しかし、この方法は最適じゃないので、本番環境を構築する時に、
> ウェブサーバでstaticファイルの設定をするほうがいいです。apacheであろうか、
> lighttpdであろうか、nginxであろうか、設定する方法が様々なので、
> ウェブサーバのドキュメントを見てください。
はい。これは少し先の課題として。
長谷部
追伸 イアンさんには2通の返信が行くかと思いますが御容謝。