モデルの追加フォームと編集フォームを同じページに配置したいと考えています。このスクリーンショットで、JS を使用して 2 つのフォームを表示および非表示にしていることがわかります。
編集フォームで、ユーザーが航空機 ID を選択すると、他のデータに Ajax が入力されます。
現在、次のようにパーシャルから 2 つのフォームをレンダリングしています。
<!-- Add Aircraft -->
<div id="aircraftmodal-add-content">
<%= render 'aircrafts/new' %>
</div>
<!-- Edit Aircraft -->
<div id="aircraftmodal-edit-content">
<%= render 'aircrafts/edit' %>
</div>
私のフォームはほぼ同一のコンテンツをレンダリングします。編集フォームに別の ID を与えることでハッキングしています。
<!-- Add Partial --->
<%= form_for @aircraft, validate: true, remote:true do |air| %>
<!-- Edit Partial -->
<%= form_for @aircraft, :html => { id:'edit_aircraft'}, validate: true, remote:true do |air| %>
このように同じページに 2 つのフォームをまとめて配置する場合、組み込みの Rails の利点を使用して編集を処理することはできますか? 編集フォームを別のアクションに向ける必要がありますか、それとも通常のコードで両方を処理できますか?
def create
@aircraft = current_user.aircrafts.build(params[:aircraft])
@aircraft.save
end
ご指導よろしくお願いします。:)