0

私はいくつかの異なる電子メールのレールにメーラーを持っています。そのうちの1つは、別のユーザーが何かにコメントしたことをユーザーに通知するために送信されます。

電子メールが生成されると、コメントの内容が含まれているため、コメントがエスケープされていることを確認する必要があります。これは、すべてのビューと同様に、レールがデフォルトで行っています。これは素晴らしいのですが、単語でアポストロフィなどのシングル クォーテーションになると、ダブル エスケープされてしまうようです。私が受け取った電子メールは、

„ It's all about the quotes isn't it. “

Rails ログで電子メールの HTML を調べると、生成された HTML が

„ It's all about the quotes isn't it. “

したがって、正しくエスケープされていますが、何かがもう一度エスケープしています。私のビューはhtml.hamlファイルです。

コマンドでコンテンツを出力しようとしましたrawが、違いはなかったので、何が起こっているのかかなり混乱しています。Rails 3.2.8 では一重引用符のエスケープが変更されたことを知っているので、' が表示されることを期待していますが、& も表示されません。

4

1 に答える 1

0

他の開発者の 1 人が行った変更であることが判明しました。彼らは入力にサニタイズを追加したので、保存される前にエスケープされ、レールは表示時にエスケープされていたため、二重にエスケープされていました。今ソートされました:)

于 2013-06-27T23:35:54.270 に答える