Rails 3.2.x と Ruby 1.9.3 の使用
不正な形式の erb テンプレートが与えられた場合、次のいずれかを行うにはどうすればよいですか。
- テンプレートを検証し、問題がある場合はエラーを発生させます
- 不適切なテンプレートの結果を取得しようとすると、ERB がスローする SyntaxError をキャプチャします。
私はこれがうまくいくと思います:
template = "Hello <%= @planet name %>"
@planet_name = "Earth"
begin
ERB.new(template,nil).result(binding)
rescue
Raise StandardError, "Bad Erb template"
end
しかし、そうではありません。代わりに、ERB から SyntaxError が返されます。
これらのエラーをキャプチャ/検証する方法はありますか?