expenses
は複数のexpense_types
を持ち、各expense_type
は複数の特定のフィールドを持つフォームを持っています。 expense
を作成する際にRails 5.0 - ネストされたフォームを動的にレンダリングする方法は?
、私はそれを持っているであろうexpense_type
選択することができ、およびAJAXを通じて私はfields_for
選択expense_type
render
したいと思います。 expense_type
travel
を選択すると、それはまた、フィールドitinerary
、ページ上のstart_date
/end_date
が含まれています。たとえば
、のexpense
が人のname
とexpense_cost
を持っているとしましょう
私はexpense
フォーム内で、選択したexpense_types
のいずれかをレンダリングするために次のコード行があります:私は@expense_type = params[:selected_expense_type]
を設定し、:new
をレンダリングするためにそれを伝えるために、アクションを呼び出す場合「、それを
<% if @expense_type.present? %>
<%= f.fields_for ("expense_#{@expense_type}").to_sym do |ff| %>
<%= render "expense_#{@expense_type.pluralize}/#{@expense_type}_form", f: ff %>
<% end %>
<% end %>
を選択したフォームを意図したとおりに表示しますが、ユーザーが既に入力したデータは失われます。
expense
の現在のフォームデータを失うことなくこの変数を設定するにはどうすればよいですか?おそらくこれを行うためのより良い方法はありますか?
ありがとうございます!