Rails3 で ActiveRecord にて取得した UTF-8 の日本語を view に表示する

ActiveRecord にて取得した UTF-8 の日本語の情報を view で表示する方法です。
たとえば、Controller を下記のように記述します。

# coding: utf-8

class UserController < ApplicationController
  def index
    User.create({
      :name => 'てすと',
    })
    @user = User.find(:first)
  end
end

そして、view を下記のように記述します。

<h1>日本語表示のテスト</h1>

<%= @user.name %>

すると、下記のようなエラーが出て日本語を表示することが出来ません。

incompatible character encodings: UTF-8 and ASCII-8BI

これは、日本語を ActiveRecord 上では ASCII-8BI で扱い view 上では UTF-8 で扱っているため、違う文字コードの日本語を連結することは不可能であるというエラーのようです。
そのため view に日本語を一切書かなければ正常に表示することが出来ますが、そういうわけにもいきません。
単純に回避するのであれば、下記のように view 上で日本語を UTF-8 に強制的に encode してあげればエラーは出ません。

<h1>日本語表示のテスト</h1>

<%= @user.name.force_encoding('UTF-8') %>

ですが、全てのデータ出力に force_encoding を付けていくのは DRY ではありません。
そこで app/helpers/application_helper.rb に下記のように記述すると force_encoding をしなくても日本語を表示できるようになります。

module ActionView
  class OutputBuffer < ActiveSupport::SafeBuffer
    def <<(value)
      super(value.to_s.force_encoding('UTF-8'))
    end
    alias :append= :<<
  end
end

■お詫び
 ActionView のオーバーライドは最初は config/environment.rb に記述してくださいと書いていましたが、設定を読み込む順番によってはオーバーライドされない現象が確認できました。
 こちらは、app/helpers/application_helper.rb に記述することで動作することが確認できましたので、修正させていただきました。