Ich habe eine Seite, auf der Sie eine Rechnung erstellen. Es gibt einen separaten Abschnitt, in dem Sie Zahlungen zu Rechnungen hinzufügen können. Was ich tun möchte, ist die Möglichkeit, beim Erstellen einer Rechnung eine Zahlung zu erstellen.Rails Render Teil eines Formulars in einem anderen Formular
Ich möchte das Formular "Create Payment" VIEW in das Formular "Create Invoice" VIEW rendern. Wie kann ich das machen? Hier einige Code ist:
Rechnungsformularansicht (beachten Sie den Anruf machen):
<%= 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) Die teilweise von der Zahlung Formular erstellen (bemerke ich bin nicht der form_for Tag einschließlich hier, weil ich in einer anderen Form auf der Rechnung Seite oben) nicht neben eine Form wollen:
<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>
das Hauptproblem ist die f
Variable in der teilweise nicht existiert. Und selbst wenn ich die f
Variable der Rechnung von ihrer Form zuweise, wären die Namen der Parameter params[:invoice][:amount]
eher als params[:payment][:amount]
. Siehst du, was ich sage?
Was ist der beste Weg, dies zu tun?
Sie [accepts_nested_attributes_for] Haben überprüfen (http://api.rubyonrails.org/classes /ActiveRecord/NestedAttributes/ClassMethods.html) und [fields_for helper] (http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html#method-i-fields_for)? –