Estoy tratando de crear un formulario que me permita enviar nuevos registros para una asociación donde las entradas de asociación están agrupadas.agrupando y fields_for
class Product < AR::Base
has_many :properties
accepts_nested_attributes_for :properties
end
Tenga en cuenta que en el controlador de una serie de propiedades se construyen para el producto, por lo @product.properties.empty? # => false
.
El siguiente fields_for
me da las entradas correctas con nombres como product[properties_attributes][0][value]
.
= form.fields_for :properties do |pform|
= pform.input :value
Pero tan pronto como lo intento y el grupo de la asociación ya no genera entradas con los nombres correctos:
- @product.properties.group_by(&:group_name).each do |group_name, properties|
%h3= group_name
= form.fields_for properties do |pform|
= pform.input :value
Esto crea entradas de los cuales el atributo name
como product[product_property][value]
cuando en realidad debería ser product[property_attributes][0][value]
según el primer ejemplo.
Los rieles sugiere que puede hacer esto:
= form.fields_for :properties_attributes, properties do |pform|
Pero esto da un error "valor método no definido para la matriz".
Esto parece funcionar, no sé por qué no lo probé ': properties' en lugar de ': property_attributes'. Aceptaremos en breve. – Kris