J'ai une application Ruby/Rails.Problème d'encodage Ruby UTF8
J'ai une table d'artistes dans ma base de données postgresql que je veux interroger par son nom. J'ai quelques artistes avec des caractères portugais etc. et ai quelques problèmes les interrogeant.
Par exemple, une bande s'appelle Legião Urbana. Si je fais une recherche avec la chaîne « Legia » de mon application, je reçois les params suivants:
{"action"=>"search_artist", "q"=>"legi\343", "controller"=>"home"}
Cependant, je reçois une erreur de la requête
Artist.all(:conditions => "name LIKE '%#{params[:q]}%'")
PGError: ERROR: invalid byte sequence for encoding "UTF8": 0xe32527
Que dois-je faire pour convertir en UTF8 ou résoudre ce problème de se produire en quelque sorte?
Ok, il est plus l'encodage/que je suis en train de convertir intéressé. Comment trouvez-vous l'encodage du paramètre? Je suis conscient du problème d'injection SQL mais je voulais juste donner un exemple de la requête. – johnnymire
Ok cool, des conseils sur Ruby 1.8.7? – johnnymire
+1 pour "vous devez transmettre le paramètre en tant que paramètre SQL, sans utiliser l'interpolation de chaîne". –