- 2009-12-05 (土) 3:57
- Rails
例外処理でハマった。
ApplicationControllerですべての例外をキャッチするようにしていて、そこに例外クラスが飛んでくる。
Exception.recordにモデルが格納され、そのモデルのerrorsにエラーメッセージ等がある。
そこで
exception.record.errors.hoge
みたいな感じでアクセスしようとしたが、NoMethodErrorになった。
解決策としては
flash[:errors] = exception.record
上記のようにモデルごとflashに格納してしまうとうまくいく。
あとはビューでerror_message_forをすればよい。
error_message_for :hoge, object => flash[:errors]
こうしておけばモデルのエラーが画面に表示出来る。
flushなのでリダイレクトしても平気。
おおいにハマった。まだまだ勉強しなきゃなー。。
おしまい。
- Newer: Rails2.3.4でbelongs_toのリレーションがうまく動かない。
- Older: OAuthの流れと気になったこと。
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.terut.net/wp-trackback.php?p=184
- Listed below are links to weblogs that reference
- Rails2.3.4で例外処理。 from Action*3