Ruby on Railsで文字列からhtmlタグを除去する方法

rails

Ruby on Railsでアプリケーションを作成した際に、ユーザーに入力させた文字列などからhtmlタグを除去する際に使えるsanitizeメソッドについて紹介します。

Rubyのsanitizeメソッドとは?

Rubyのsanitizeメソッドは、与えられた文字列からタグと属性を除去してくれるメソッドです。

タグを除去してくれると言っても、一概に除去するのではなく除去しないタグ、除去するタグをオプションで指定することができます。

sanitize(文字列[,tags => "許可するタグ名", attributes => "許可しないタグ名"])

tags:許可するタグ名を記載

attributes:許可しないタグ名を記載

上記のような使い方となります。

例えば、Ruby on Railsでユーザー投稿型のアプリケーションや、ブログのようなアプリケーションを作成した際、Viewで表示させる場合にHTMLタグを除去したい場合などに使えます。



カテゴリー