0

これは一般的な要件であると確信していますが、私はレールに不慣れで、問題を検索しようとしましたが、あまり運がありませんでした.

フォームがあり、特定のエントリのデータベースからの値を事前に入力しました。ユーザーはこれらの値を変更し、[編集] ボタンをクリックして、データベース内の値を編集できる必要があります。

標準の /1/edit URL パスを使用せずに、ページ内から編集アクションを呼び出したいと考えています。基本的に、特定のエントリの id をメソッドに直接渡して .find(params[:id]) を呼び出したいと思います。

これを行うための最良の「レールの方法」は何ですか?

ご協力いただきありがとうございます。

4

2 に答える 2

1

この特定のメソッドは、ボタンを押したときに呼び出されていますか? リンククリック?ピント変更?

次のように、いつでもパラメーターをサーバーに送信できます。

<%= link_to "Your action", yourcustomaction_path(:id => @object.id) %> 

またはこのように:

<%= text_field_tag "yourattribute", params[:this_field_attribute] %>

デフォルトの edit アクションを常に呼び出す必要はありません。routes.rb で別のルートを作成するだけです。

于 2012-06-01T12:11:29.023 に答える
0

または、さらに一歩進んで in_place_editing gem を使用することもできます。ボタンやリモート フォームは不要です。

于 2012-06-01T18:03:45.180 に答える