salesforceと連携してアプリケーションを作ったのですが、うまく日本語表示ができません。
Rails上のアプリからブラウザを使って追加と編集を日本語で行うと、salesforce上のデータベースには日本語で反映されるのですが、それをRails上で取得してブラウザで該当の文字を確認すると、代わりにコード(?)が表示され、日本語が正しく表示されません。具体的な解決方法をご教授下さい。ちなみに、英数は正しく表示されます。また、salesforceを使わずに一般的なRailsのアプリケーションを作成した場合は、日本語・英数共に正しく表示されます。
■環境
rails 2.3.8
ruby 1.8.7
mac os x 10.6.8
■表示される日本語とコードの関係
鈴木→\351\210\264\346\234\250
一郎→\344\270\200\351\203\216
あ→\343\201\202
い→\343\201\204
salesforceとRailsのアプリで使用している文字コードが違っているのでは無いでしょうか?まずそれぞれで使用している文字コードが何か確認すると良いかと思います。
salesforceとRailsのアプリで使用している文字コードが違っているのでは無いでしょうか?まずそれぞれで使用している文字コードが何か確認すると良いかと思います。
回答ありがとうございます。
下記のいずれかなのかなーと想像しています。参考:http://goo.gl/Ypn90
1.utf-8の8進数表記のデコードに失敗している
2.デコードした結果、なぜかutf-8の8進数表記になっている
1番の可能性の方が高そうです。Railsにおけるutf-8の8進数のデコードの方法がわかれば解決しそうな気がしています。
salesforceの資料を軽くあさってみましたが特に書いていなかったので、休み明けにsalesforceに問い合わせて聞いてみます。
もし何かわかるようでしたら、教えて頂けると幸いです。
saleseforceの連携方法について詳しくないのですが、Railsのアプリからどのようにして連携されているのか(コードのサンプルなど)記載して頂くことは可能ですか?
回答ありがとうございます。
以下の記事では、force.comのRubyのツールキットをマルチバイトで利用する際にenvironment.rbに「Encoding.default_external='UTF-8'」の指定が必要とありますが、これが関係していたりしないでしょうか?
回答ありがとうございます。
記事に従い、environment.rbの行末にEncoding.default_external='UTF-8'を加えましたが、Name errorとなりました。
回答ありがとうございます。
下記のいずれかなのかなーと想像しています。参考:http://goo.gl/Ypn90
1.utf-8の8進数表記のデコードに失敗している
2.デコードした結果、なぜかutf-8の8進数表記になっている
1番の可能性の方が高そうです。Railsにおけるutf-8の8進数のデコードの方法がわかれば解決しそうな気がしています。
salesforceの資料を軽くあさってみましたが特に書いていなかったので、休み明けにsalesforceに問い合わせて聞いてみます。
もし何かわかるようでしたら、教えて頂けると幸いです。