請求書を作成するページがあります。請求書に支払いを追加できる別のセクションがあります。私がやりたいのは、請求書を作成するときに支払いを作成する機能を追加することです。
「支払いの作成」フォームのビューを「請求書の作成」フォームのビューにレンダリングしたいと思います。これどうやってするの?ここにいくつかのコードがあります:
請求書フォームビュー(レンダリング呼び出しに注意):
<%= form_for(@contract) do |f| %>
<div class="field">
f.label "Add payment?"
<div id="pay_form">
<%= render 'payments/pay_form' %>
</div>
</div>
(_pay_form.html.erb)支払いフォームの作成からの部分(上記の請求書ページの別のフォーム内のフォームを次にしたくないため、ここにform_forタグを含めていないことに注意してください):
<div class="field">
<%= f.label 'Amount Paid:' %>
<%= f.text_field :amount %>
</div>
<div class="field">
<%= f.label 'Payment Method' %>
<%= f.select :method, %w(Cash Credit Check) %>
</div>
主な問題はf
、パーシャルの変数が存在しないことです。f
また、フォームから請求書の変数を割り当てたとしても、パラメータの名前はでparams[:invoice][:amount]
はなくなりparams[:payment][:amount]
ます。私が言っていることがわかりますか?
これを行うための最良の方法は何ですか?