[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