2

是否有某种方法可以确定 Rails (2.2) 当前正在帮助方法中呈现的文件。一个示例结果是“/sessions/new.html.erb”或类似的东西。

我正在尝试编写一个辅助函数,该函数根据正在呈现的文件名执行某些操作,因此我需要一种可靠的方法来获取此信息。有没有官方的方式来获取这些信息?

4

2 回答 2

1

我现在有这个极其丑陋的解决方案。有更好的主意吗?


begin
  raise "Nasty hack"
rescue 
  render = $@.detect { |bti| /\/app\/views\/(.+)\:\d+\:in \`_run_erb_/ =~ bti }
  return $1
end
于 2008-12-02T13:44:12.527 回答
1

在 Rails 2.2 中,您可以使用@template.template

于 2008-12-02T22:36:15.820 回答