У меня есть следующий код в моих моделях:
Class Farm < ActiveRecord::Base
has_many :farm_products, :dependent => :destroy
has_many :products, :through => :farm_products
accepts_nested_attributes_for :farm_products
end
class Product < ActiveRecord::Base
has_many :farm_products, :dependent => :destroy
has_many :farms, :through => :farm_products
end
class FarmProduct < ActiveRecord::Base
belongs_to :farm
belongs_to :product
end
У меня есть форма для создания новой фермы, и я хочу создать farm_products вместе с этой формой. Моя таблица farm_products может содержать не только поля внешнего ключа. Как добавить или удалить вложенные столбцы с помощью Javascript и / или JQuery?
UPD. Я нашел потрясающую жемчужину от nested_forms, которая делает именно то, что я хочу!
Вот код на мой взгляд
= nested_form_for @farm, :html => { :multipart => true } do |f|
= f.fields_for :farm_products do |fp|
-#fields goes here
= fp.link_to_remove 'Remove this task'
= fp.link_to_add "Add a task", :farm_products
Но получил ошибку, которая говорит
undefined method `klass' for nil:NilClass
Возможно, что-то не так с моими отношениями, но я не могу найти проблему.