ActionView :: Template :: Error (encodages de caractères incompatibles: UTF-8 et ASCII-8BIT)

Je suis à l'aide de Ruby 1.9.2, Rails 3.0.4/3.0.5 et Phusion Passenger 3.0.3/3.0.4. Mes modèles sont écrits en HAML et je suis en utilisant le MySQL2 gem. J'ai un contrôleur de l'action que lorsqu'il est passé d'un paramètre qui a un caractère spécial, comme un tréma, me donne l'erreur suivante:

ActionView::Template::Error (incompatible character encodings: UTF-8 and ASCII-8BIT)

L'erreur de points à la première ligne de mon HAML modèle, qui a le code suivant:

<!DOCTYPE html>

Ma compréhension est que cela est dû au fait que j'ai une chaîne UTF-8 qui est concaténé avec un code ASCII 8 BITS de la chaîne, mais je ne peux pas pour la vie de me comprendre ce que l'ASCII 8 BITS chaîne. J'ai vérifié que les paramètres de l'action sont encodés en UTF-8 et j'ai ajouté un encodage: UTF-8 de la déclaration du sommet de la HAML modèle et le ruby et j'obtiens toujours cette erreur. Ma demande.rb fichier a un config.encoding = "UTF-8" déclaration bien et les suivants tous les résultats en UTF-8:

ENV['LANG']
__ENCODING__
Encoding.default_internal
Encoding.default_external

Voici le kicker: je ne peux pas reproduire ce résultat en local sur mon Mac-OSX utilisation autonome des passagers ou des bâtards en soit de développement ou de production. Je ne peux que reproduire sur un serveur de production, l'exécution de nginx+passager sur linux. J'ai vérifié dans la production de la console du serveur que ceux-ci ont mentionné les commandes de tous les résultats en UTF-8.

Avez-vous rencontré ce même message d'erreur et comment les avez-vous le résoudre?

source d'informationauteur Pan Thomakos