Rails 3 で remote_form_for みたいなことをやる
オライリーの Head First Rails を読みながら Rails の勉強してるわけですが、やってる環境が Rails 3 なんでちょっと違ったりする部分があったりします。(この本は Rails 2.3 に対応とのこと)
まあそんなに違わなかったので結構サクサク進んでたのですが、今回はちょっとつまったのでメモ書きしておきます。
Rails 3 らしいやりかたということではないと思います。あくまで本を進めるために、 2.3 のやり方をできるだけそのまま 3 でやるにはどうしたらいいんだろう、ということでやってます。
つまったのはP.287の remote_form_for
です。このタグを使えば簡単にAjax処理が組み込まれるとのことですが、Rails 3 ではそもそも remote_form_for
タグが無いようで動きません。どうするか。
まず、jquery-railsをインストールします。
次にAjax処理させたいフォームのタグを
と変更します。
最後に、JavaScriptを書きます。僕はshow.html.erbにそのまま書きました。
これでちゃんと本の通り座席部分が非同期で更新されるはずです。