[Ror-es] Tildes y caracteres especiales
Benjamin Cardenas Salamandra
bencarsal at gmail.com
Fri Sep 8 14:23:06 GMT 2006
Saludos raileros,
hago una corrección a la solución 2 presentada, porque no funciona si se
desea trabajar con ajax,
David Merino escribió:
> Hola Xavier, gracias por las consejos, me han servido de mucho, la
> prueba está en que funciona!!!
> Pero lo mejor de todo es que me funciona de varias maneras, ;-)
>
> Recapitulo un poco para aquel que se haya adherido tarde al hilo:
>
> PROBLEMA: Mi navegador al conectarse al webrick, no representaba
> adecuadamente los caracteres acentudos ni la "ñ". Si miro la
> codificación en que está representando el navegador (en firefox Ver->
> Codificación de caracteres) veo que está selecionada UTF-8. Al cambiar
> manualmente a iso-8859-1 los caracteres se representan bien.
>
> ¿Cómo hacer para que no sea necesario este cambio manual y webrick le
> informe correctamente a mi navegador?
>
> CAUSA: Esto se debe a que webrick, por defecto, informa al navegador
> que la codificación de caraceteres va en UTF-8. Esta configuración por
> defecto viene en:
>
> /usr/local/lib/ruby/gems/1.8/gems/rails-1.1.2/lib/commands/servers/webrick.rb
> (ojo esta es la ruta de mi ordenador)
>
> SOLUCIÓN A)
> AL arrancar el webrick indicarle el tipo de codificación por defecto usar:
> ....aplicacion$ ruby script/server -c iso-8859-1
>
> SOLUCIÓN B)
>
> Añadir en application.rb un before_filter de tal manera que el archivo
> quede de la manera:
>
> class ApplicationController < ActionController::Base
> before_filter :set_charset
>
> def set_charset
> @headers['Content-Type'] = 'text/html; charset=iso-8859-1'
> end
> end
>
class ApplicationController < ActionController::Base
before_filter :set_charset
def set_charset
if @headers['Content-Type'] =~ /;/
@headers['Content-Type'] = $`+';charset=ISO-8859-1'
end
end
end
>
> OTRAS ACLARACIONES:
>
> 1) Xavier, efectivamente en application.rb se me olvidó poner la líea
> before_filter :set_charset. Por cierto, ¿qué hace?.
>
> 2) Sin realizar ninguna modificación, he añadido algún caracter con
> tilde en public/index.html y me ha salido en el navegador de manera
> incorrecta. Pero cambiando UTF-8 por ISO-8859-1 en la etiqueta meta y
> dejándola así,
>
>
> Gracias y un saludo.
Chao,
Benjamin Cárdenas Salamandra
More information about the Ror-es
mailing list