私が貢献しているRails3.2アプリには、UTF-8へのユーザー入力を強制するメソッドがあります。
require "iconv"
def normalize(user_input_text)
Iconv.new('UTF-8//IGNORE', 'UTF-8').iconv(user_input_text.dup)
end
基本的にUTF-8で文字列をエンコードし、トランスコードできない文字を無視します。
しかし、フォームを介してRailsに入力されるすべてのユーザーデータはUTF-8でエンコードされるのではないでしょうか。
言い換えれば、このコードは疑わしくて不必要ではありませんか?