テーブルにレコードを表示する Rails アプリがあります。編集ボタンをクリックできるようにしたいのですが、レコードを編集するためのフォーム付きのモーダルが表示されます。
編集ボタンがクリックされたときにオブジェクトをリアルタイムでロードする方法がわかりません。すべてのオブジェクトをロードするのはやり過ぎですよね?
これを行うためのテクニックはありますか?
テーブルにレコードを表示する Rails アプリがあります。編集ボタンをクリックできるようにしたいのですが、レコードを編集するためのフォーム付きのモーダルが表示されます。
編集ボタンがクリックされたときにオブジェクトをリアルタイムでロードする方法がわかりません。すべてのオブジェクトをロードするのはやり過ぎですよね?
これを行うためのテクニックはありますか?
単一のレコードをプルして、編集用のモーダルダイアログをポップできます。たとえば、コントローラーで編集メソッドを定義し、単一のレコードをプルします@record = Record.find(params [:record_id])。
Railsは、その規則に従うと編集機能を提供します。
独自に作成するか、scaffoldを使用して生成してからカスタマイズします。
後者は簡単ですが---
あなたがあなたのレールの足場を持っているならrails generate scaffold_controller Club name:string exclusive:boolean
それは生成します:
create app/controllers/clubs_controller.rb
invoke erb
create app/views/clubs
create app/views/clubs/index.html.erb
create app/views/clubs/edit.html.erb
create app/views/clubs/show.html.erb
create app/views/clubs/new.html.erb
create app/views/clubs/_form.html.erb
create app/views/layouts/clubs.html.erb
invoke test_unit
create test/functional/clubs_controller_test.rb
これで、editメソッドがコントローラーにあり、それに対応するビューがedit.html.erbにあることがわかります。