POSTするときにCSRFの問題があるためのエラー
http://d.hatena.ne.jp/Megumi221/20101116:エラー画面(要検討)
この問題がやっと解決の兆し。POSTするところでいつも引っかかる。エラーがおこるMacで使っているDjangoのバージョンは1.2.3だった。このエラーは生じないLinuxの方で使っているDjangoのバージョンも確認してみる(後日)。
解決方法は以下の通り。というか、書いてあることをそのままやってみた。↓
http://django-dev.com/django-1-2-1-–-csrf-verification-failed-403-error-2010-06
やったことは、設定ファイルsettings.pyで定義される変数MIDDLEWARE_CLASSESに、’django.middleware.csrf.CsrfResponseMiddleware’を加えるだけ。この定義だけがいままで抜けていた。これだけでエラーは出なくなった。
推測するに、(Djangoだけではなく)ウェブアプリのフレームワークではバージョンがあがるたびに書き方も(ときには)大きく変わっているのではないか。セキュリティ問題への対応なんかは日進月歩であろうから。だから販売されている書籍で勉強するのにも限界があって、慣れてきたらWeb上の最新のマニュアルかなにかを参照するのが、正しい開発の進め方。この当たり前とも言えることを再確認した、こんかいの一件。
(追記)Linuxで使っているDjangoのバージョンは1.0.2。それだと、csrfなんてモジュールは無いと言われる。