Forum: Rails France Problème d'accent avec Observe_field et j rails

Posted by Tranquiliste (Guest)
on 2010-02-12 10:45
(Received via mailing list)
Bonjour,
j'ai un observe field comme suit
      <%= observe_field "company_name",
               :url => get_company_infos_path(@building),
               :method => :post,
               :before => "$('#spinner').show()",
               :success => "$('#spinner').hide()",
               :frequency => 2,
               :with => "'company_name='+ escape(value)" %>

il fonctionne bien excepté que si le company name comporte des accents
dans ce qui arrive dans le contrôleur il y a un caractère bizarre.

Si je trace cette variable
avec firebug je vois dans le Post
authenticity_token  df4baff0e63dea3eaa532b650aaaf9856c180823
company_name  La Propreté
Source
company_name=La%20Propret
%E9&authenticity_token=df4baff0e63dea3eaa532b650aaaf9856c180823

et dans le controleur
La Propret�

Est ce qu'il y a une manip particulière à faire pour passer le
paramètre?

Merci d'avance
Nicolas
Posted by Tranquiliste (Guest)
on 2010-02-13 07:25
(Received via mailing list)
En réfléchissant un peu (ça m'arrive), je me rends compte que mon
problème vient du escape quand je passe le paramètre.
:with => "'company_name='+ escape(value)"
Par contre si je l'enlève, je m'expose, quelle solution j'ai?

Merci
Nicolas
Posted by Thibaut Barrère (thbar)
on 2010-02-13 14:36
(Received via mailing list)
Propret%E9

Ca a l'air d'être de l'ISO-8859-1.

Est-ce que le reste de ta page est en UTF-8 ?

-- Thibaut
Posted by Tranquiliste (Guest)
on 2010-02-13 16:55
(Received via mailing list)
Oui il est en UTF-8
  <meta http-equiv="content-type" content="text/html; charset=UTF8"/>

Tu vois un problème?
Posted by Thibaut Barrère (thbar)
on 2010-02-14 00:33
(Received via mailing list)
> Oui il est en UTF-8
>   <meta http-equiv="content-type" content="text/html; charset=UTF8"/>
>
> Tu vois un problème?

Il faudrait vérifier à chaque bout quels sont les encodages 
utilisés(dans ton controleur, dans ta vue, dans ta base etc) pour vérifier
qu'ils sont cohérents.

Je pense qu'il y a une incohérence à un endroit. Ca va être dur à 
débugger par mail.

-- Thibaut
Posted by Tranquiliste (Guest)
on 2010-02-14 07:32
(Received via mailing list)
> Il faudrait vérifier à chaque bout quels sont les encodages utilisés
> (dans ton controleur, dans ta vue, dans ta base etc) pour vérifier
> qu'ils sont cohérents.

> -- Thibaut

Merci, visiblement des test que j'ai pu déjà faire, c'est le escape
javascript qui me met ces caractères (c'est d'ailleurs sa fonction) et
tout de suite je ne vois pas pourquoi je faisais ça?

Nicolas
Posted by Thibaut Barrère (thbar)
on 2010-02-14 14:51
(Received via mailing list)
> Merci, visiblement des test que j'ai pu déjà faire, c'est le escape
> javascript qui me met ces caractères (c'est d'ailleurs sa fonction) et
> tout de suite je ne vois pas pourquoi je faisais ça?

Doc d'escape: The escape() function encodes a string. This function
makes a string portable, so it can be transmitted across any network
to any computer that supports ASCII characters.

http://www.compoundtheory.com/?action=displayPost&ID=40

Je pense que escape ne conviendra pas pour toi (voir le lien pour une
alternative).

-- Thibaut
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.