-
Railsで画面を遷移せずにデータを書き換える 2007-08-07 00:00:00
「Railsレシピ」を読みながら試してみます。
script.aculo.usのInPlaceEditorを使うので、RailsというよりもJavascriptのノウハウですが、Railsには最初からヘルパーが用意されているのでJavascript書く必要はないよ、ということみたい。
viewのとあるページで以下のように表示していたとすると
<%= h diary.title %> <%= h diary.text %>
InPlaceEditorのヘルパーを使って以下のように書き直します。
<%= in_place_editor_field :diary, :title %> <%= in_place_editor_field :diary, :text, {}, :rows => 10 %>引数は、インスタンス名、インスタンス変数、 オプション、 行数の順です。rowsを1にしていると(デフォルト)、クリックしたときにテキストフィールドが表示されますが、2以上ならばテキストエリアが表示されます。
さらにRailsでは、POSTを受け取るコントローラのアクションも簡単に用意できます。
in_place_edit_for :diary, :title in_place_edit_for :diary, :text
これをコントローラに追加するだけ。他には何もする必要がありません。便利だなあ。正直、プログラミングしている気にはなりませんが……。

コメント(
リンク元(85)