Ojo con respond_to

Esto es sólo un apunte, si estás utilizando respond_to… nunca nunca
nunca hagas esto:

respond_to do |format|
format.js {
#cosas javascript
}
format.html
end

Resulta que algunos navegadores (Internet Explorer entre ellos) envían
la cabecera HTTP Accept directamente como ‘/’, como respond_to
retorna la primera coincidencia responderá con format.js en vez de
format.html :frowning:

Para solucionarlo sencillamente hay que hacer esto:

respond_to do |format|

html el primero de todos, o lo que sea que estés retornando por

defecto
format.html
format.js {
# respuesta javascript
}
end

Es decir, el orden importa mucho.

Quisiera culpar a Internet Explorer de ello, pero me temo que es el
comportamiento esperado (aunque me cago en sus muertos, dicho sea de
paso).

No lo he visto en la API y por eso lo pongo, por si le sirve a alguien
:slight_smile:

Saludos

David A., el único desarrollador con una orden de alejamiento de
Jeffrey Zeldman
Simplelogica.net, ahora con un 33,3% más de intromisión en listas de correo

Cuando no hago otra cosa escribo en mildiez.net

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs