Tengo un formulario de suscripción que anida asociaciones/atributos como quiera que los llame.Rieles: Deshacerse de los errores de validación genéricos "X no es válido"
Mi jerarquía es la siguiente:
class User < ActiveRecord::Base
acts_as_authentic
belongs_to :user_role, :polymorphic => true
end
class Customer < ActiveRecord::Base
has_one :user, :as => :user_role, :dependent => :destroy
accepts_nested_attributes_for :user, :allow_destroy => true
validates_associated :user
end
class Employee < ActiveRecord::Base
has_one :user, :as => :user_role, :dependent => :destroy
accepts_nested_attributes_for :user, :allow_destroy => true
validates_associated :user
end
tengo algunas cosas de validación en estas clases también. Mi problema es que si trato de crear un cliente (o empleado, etc.) con un formulario en blanco, obtengo todos los errores de validación que debo obtener más algunos genéricos como "El usuario no es válido" y "El cliente no es válido". los errores me sale algo como:
user.login can't be blank
User is invalid
customer.whatever is blah blah blah...etc
customer.some_other_error etc etc
Puesto que hay al menos un campo no válido en el modelo de usuario anidado, un extra de "X no es válido" se añade mensaje a la lista de errores. Esto confunde a mi cliente y me pregunto si hay una forma rápida de hacerlo en lugar de tener que archivar los errores yo mismo.
Además, he propuesto una solicitud de función como una mejor solución que esta solución temporal: https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/5632-validates_associated-should-be-allowed -to-not-create-a-error # ticket-5632-2 – DJTripleThreat
Recibo el error "no hay conversión implícita de Symbol en cadena" – Chemist
@Chemist esto funcionaba para una versión anterior de los rieles. Intente editar el código proporcionado para que funcione correctamente con la versión que está utilizando. – DJTripleThreat