validations validates validate than rails greater_than greater custom ruby-on-rails ruby validation

ruby-on-rails - than - validates message rails 5



Ruby on Rails-after_validation si es vĂ¡lido? (3)

En este momento, por lo que sé, se after_validation incluso si el modelo falla las validaciones. ¿Hay una manera de llamarlo solo si el modelo es válido? Intenté agregar return false unless self.valid? en el método after_validation , pero que vuelve a after_validation validación y crea un bucle infinito.


¿Has pensado en usar la devolución de llamada before_save en su lugar?

Creo que solo será llamado si el objeto es válido.


Las validaciones fallidas se agregan a los errores del registro, por lo que simplemente puede verificar:

return false unless self.errors.empty?


Sé que esta es una pregunta antigua, pero tuve el mismo error al usar una validación personalizada en un modelo que había creado. En cuanto a los docs hay una parte que cubre los métodos personalizados e indica que dichas validaciones se llaman cada vez que el .valid? método. Probablemente esa sea la razón por la que el bucle infinito se activó cuando se activó la devolución de llamada :after_validation .