使用 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。
有没有办法捕获/验证这些错误?