У меня есть две модели, как:UnknownAttributeError для вложенной формы
Заказчик:
has_many :products, :dependent => :destroy
accepts_nested_attributes_for :products, reject_if: proc { |attributes| attributes['product_id'].blank? }
продукта:
belongs_to :customer
продукты контроллер:
def product_params
params.require(:product).permit(:name, :first_build)
end
клиентов контроллер:
def customer_params
params.require(:customer).permit(:first_build, :name, :product_id,
products_attributes: [:first_build, :customer_id])
end
Так в контроллере клиентов я делаю это
@customer.products.build(:first_build => true)
, но я получаю эту ошибку
unknown attribute 'first_build' for Prodcut
, но когда я делаю это @customer.products.build(:name => "test product name")
она прекрасно работает без каких-либо ошибок , Здесь стоит отметить, что first_build
не является столбцом в таблице продуктов.
Я предполагаю, что вы намеревались напечатать 'Product' not' Prodcut' ... но если 'first_build' не является атрибутом (а не столбцом), почему вы его передаете? – SteveTurczyn
Да, это продукт. Я просто хочу знать, можно ли передавать атрибуты, отсутствующие в таблице. –
О, да, вы можете. Я отправлю ответ. – SteveTurczyn