Ruby on rails - setear mensaje diferente para errores
Iniciado por
Nello
, jun 10 2014 21:00
Pulsa corazón para recibir avisos de nuevas Respuestas
Nello
AUTOR PREGUNTA
#1
Publicado 10 junio 2014 - 21:00
¿En rails cómo puedo setear un “:message” diferente para cada uno de los errores posibles?
Esto también te interesa!
Alberto Hernandez
#2
Publicado 10 junio 2014 - 23:13
Puedes probar con esto, no lo he probado pero quizá te funcione:
validates_numericality_of :price, :greater_than_or_equal_to => 0, :message => "var1" validates_numericality_of :price, :less_than => 1000000, :message => "var2"
Julian10
#3
Publicado
10 junio 2014 - 23:22
En el modelo.rb puedes colocar lo siguiente:
def validate
if self.price < 0
errors.add(:price, "custom message")
elsif
self.price > 1000000
errors.add(:price, "custom message")
end
end
Invitado_Jonathan A_*
#4
Publicado
11 junio 2014 - 04:01
Sí estas usando Rails 3 puedes crear un validador custom, por ejemplo:
class BetterNumericalityValidator < ActiveModel::EachValidator
def validate_each(record,attribute,value)
if value < 0
record.errors[attribute] << "must be greater than or equal to 0"
elsif value >= 1000000
record.errors[attribute] << "must be less than 1000000")
end end end
Nello
AUTOR PREGUNTA
#5
Publicado 11 junio 2014 - 04:20
Gracias, por cierto bueno saber para la versión 3 de rails