Codificación en rails 1.2.1? tild es y demás

Buenas, tengo un problemilla.
Estoy iniciando una nueva aplicación. Si pongo en environment.rb la
versión
de rails 1.1.6 y en el html : , se ve todo correctamente, pero
si
cambio la versión de rails a 1.2.1, los caracteres como eñes y tildes no
salen.

He leído por ahí que la última versión de rails usa utf 8, pero no sé
como
decirle que use latin 1.
Alguna sugerencia?

Gracias

Yo le recomendaría manejar todo en UTF-8. Puede que sea un paradigma
mío,
pero me ha funcionado bien.
http://www.lacoctelera.com/ror-lab/post/2007/03/22/poniendo-todo-utf-8

Saludos.

El día 28/03/07, Luis V. < [email protected]> escribió:

On Mar 28, 2007, at 12:25 PM, Luis V. wrote:

Buenas, tengo un problemilla.
Estoy iniciando una nueva aplicación. Si pongo en environment.rb la
versión de rails 1.1.6 y en el html : , se ve todo
correctamente, pero si cambio la versión de rails a 1.2.1, los
caracteres como eñes y tildes no salen.

En esas versiones cambio el charset por defecto de la cabecera
Content-Type, que es el que manda en HTTP por encima del META (el
META esta pensado para archivos leidos de disco, para entendernos).

Antes se configuraba eso con un filtro en application.rb donde se
modificaba la cabecera a mano, pero en 1.2 esta encapuslado en

config.action_controller.default_charset = ‘iso-8859-1’

que se pone en el bloque de environment.rb donde van ese tipo de
cosas (si bien no lo he usado, habria que comprobar si por Ajax va
todo bien).

– fxn

config.action_controller.default_charset = ‘iso-8859-1’

que se pone en el bloque de environment.rb donde van ese tipo de
cosas (si bien no lo he usado, habria que comprobar si por Ajax va
todo bien).
yo estoy casi seguro de que en ajax funcionaría bien eso a la hora de
mostrar datos (al fin y al cabo el browser interpreta la parte de ajax
en el contexto de la página que contiene la definición del charset),
pero de lo que estoy seguro al 100% es de que si envías datos desde el
browser via ajax va a funcionar mal.

tal cual está implementado el serialize de Element en prototype.js, se
está utilizando una llamada javascript que convierte a utf-8 siempre.
La solución simple para esto es meter un before_filter que convierta de
utf-8 a iso-8859-1 los campos si se cumple request.xhr?.

La solución que menos problemas te va a dar es no ir contra corriente,
hacer caso del convention over configuration y trabajar en utf-8 aunque
en algunos casos el cuerpo te pida lo contrario (sobre todo si trabajas
con sistemas legacy donde la DB esté en iso)

saludos,

j

Estamos de estreno… si necesitas llevar el control de tus gastos
visita http://www.gastosgem.com !!Es gratis!!