Я застрял -
Я создаю приложение учета в рельсах, и у меня есть модель, в которой у клиента будет несколько счетов-фактур, а также несколько платежей (связанных с этими счетами)
Вот краткий обзор упрощенной модели:
class Customer < ActiveRecord::Base
has_many :customer_payments
has_many :invoices
accepts_nested_attributes_for :customer_payments, :allow_destroy => true
end
class CustomerPayment < ActiveRecord::Base
has_many :customer_payment_items
belongs_to :customer
belongs_to :invoice
accepts_nested_attributes_for :customer_payment_items
end
class CustomerPaymentItem < ActiveRecord::Base
belongs_to :invoice, :inverse_of => :customer_payment_items
belongs_to :customer_payment
end
class Invoice < ActiveRecord::Base
has_many :invoice_lines, :dependent => :destroy
has_many :customer_payment_items, :inverse_of => :invoice
belongs_to :customer
accepts_nested_attributes_for :invoice_lines, :allow_destroy => true
end
У меня есть вложенная форма, в которой я хочу показать атрибуты Customer, CustomerPayment и CustomerPaymentItem - все работает нормально.
Я также хочу показать атрибуты Invoice для каждого CustomerPaymentItem (каждый CustomerPaymentItem относится к одному счету), и хотя я могу получить форму для отображения информации CustomerPaymentItem, я не могу получить ее для отображения информации Invoice, которая необходима для дайте ссылку на пользователя. - У меня проблемы с получением данных из ассоциации принадлежащих к для отображения в форме.
Я в растерянности. Разве я не могу пройти через ассоциацию принадлежащих к? К вашему сведению - я могу отправить данные в журнал, где я знаю, что данные счета-фактуры заполняются во время вызова CustomerPayment.new, кажется, что он просто теряется между контроллером и формой.
Как мне получить доступ к этим данным? Вот информация о форме - (из нескольких визуализированных форм) материал, который не отображается, находится между ---.
<p>
<%= f.label :amount %><br />
<%= f.text_field :amount %>
</p>
<p>
<%= f.label :invoice_id %><br />
<%= f.text_field :invoice_id %>
</p>
<p>
<% f.fields_for :invoice do |builder| %>
--- doesn't show
Invoice Detail
<p>
<%= builder.label :number %><br />
<%= builder.text_field :number %>
</p>
<p>
<%= builder.label :sub_total %><br />
<%= builder.text_field :sub_total %>
</p>
--- doesn't show
<% end %>
</p>
Я что-то упускаю в своих полях, чтобы показать справочные данные счета-фактуры? Не слишком ли сложна моя модель для рельсов?