Tuve el mismo problema que causó algunos problemas ya que la aplicación en la que estoy trabajando tiene mensajes de brindis globales que aparecen para errores tales como 404 en llamadas ajax.
Siendo ese el caso, hice este parche. Sin duda puedes hacer más. Sería una buena idea, por ejemplo, cambiar la forma en que funciona el javascript, pero este parche mono es el cambio más pequeño que podría hacerle al código y aún así obtener la funcionalidad requerida. Tenga en cuenta que se utiliza el HTTP 204 porque la gema ClientSideValidations espera que todas las respuestas HTTP 200 (muy específicamente 200) sean respuestas con fallas de validación y, por lo tanto, no podrían reutilizarse sin cambiar también el javascript.
app/config/inicializadores/client_side_validations.rb
ClientSideValidations::Config.disabled_validators = []
# Monkey Patch
# Guranatee uniqueness middleware is fully loaded
::ClientSideValidations::Middleware::Uniqueness
module ClientSideValidations
module Middleware
class Uniqueness
def response
begin
if unique?
self.status = 204 # changed from 404
self.body = '' # changed from true
else
self.status = 200
self.body = 'false'
end
rescue NotValidatable
self.status = 500
self.body = ''
end
super
end
end
end
end
Creo que va a ser grande ... Por favor extenderla pronto .. – dbKooper
cualquier período de tiempo en esta revisión? También veo errores en la consola de Chrome. – plainjimbo
"soonish"? Estoy bastante abrumado en este momento. Sé que es una respuesta poco convincente, lo siento :( – bcardarella