2010-11-18 4 views
0

私は、ユーザーが多くの異なるデータ(投稿、コメントなど)を入力できるようにするアプリケーションを作成しました。 simple_formatは私のためには良いですが、私はちょうどクレイジーなものから保護したいです。私はいくつかのガイドを読み込む前と後に私はまだ実装方法について少し混乱していますが、サニタイズを使用していません。私はここでいくつかの方向性を得ることができると思っています。礼状simple_formatをレールに実装する2.3.8

私は@ post.bodyを収集しているとしましょう。ユーザーが入力できる<div>タグまたは<script>タグを削除するにはどうすればよいですか?私はそれを次のように見えることを前提としています:

<%= sanatize(simple_format @post.body) %> 

...しかし、どこで許可されていないタグを定義しますか? Postモデルまたはsanitize_helper?ここで正しい構文は何ですか?

+0

「サナライズ」のタイプミスは陽気なLOLです! ;) – jpemberthy

答えて

3

次は、Rails 2.3.8のsanitizeメソッドのドキュメントリンクです。このことを念頭に置いて、あなたは、このように許可されたタグを定義できるようになります:あなたはRailsの初期化子内でもそれらを定義することができます

<%= sanitize(simple_format(@post.body), :tags => %w(p span strong)) %> 

注:

Rails::Initializer.run do |config| 
    config.action_view.sanitized_allowed_tags = 'table', 'tr', 'td' 
    end 

私はあなたがこれが役に立つことを願って!

+0

これはまさに私が探していたものです。ありがとうございます。 – bgadoci

関連する問題