0

Rails 3.2.xを使用しており、次のコードが表示されています。

<%= order.address.address_array.join('<br />').html_safe %>

addressは、address1、address2、city name、state name、country name、およびzipcodeの配列です-標準的なものです。

html_safeユーザーが都市名を入力したかのようにコンテンツをマークしているので<script>something</script.、そのjavascriptコードが実行されます。

セキュリティの問題を明らかにすることなく、改行でアドレスを表示するためのクリーンな方法は何ですか。

4

2 に答える 2

2

参加する前に、アドレス配列の各行でhtml_safeを呼び出す必要があります。次のようになります(テストされていません):

<%= order.address.address_array.map(&:html_escape).join('<br />') %>
于 2012-05-25T12:41:06.137 に答える
1

試す:

simple_format(h(address))

スクリプトをエスケープしてから<br/>、改行の代わりに追加します。

于 2012-05-25T13:09:59.310 に答える