不要读一读

时间:2012-04-14 14:31:00

标签: ruby-on-rails ruby erb

ruby​​的ERB(例如在rails视图中)是否有办法在到达结束之前退出解析文件?朝红宝石__END__方向发展的东西。

Some Text
<%= ... %>
<% some_magic_quit_function %>
This will not be included in the result

我已经尝试了return,但它无法正常使用。

2 个答案:

答案 0 :(得分:4)

不,但有更直接的

<% unless some_quit_function %>
  Output you don't want included if some_quit_function returns true
<% end %>

答案 1 :(得分:0)

正如Doug R指出这不起作用,原因是Erb评估方法“some_magic_quit_function”的结果,然后将结果作为渲染返回。我假设你在该方法中有一个返回,它所做的只是从该方法本身返回(它不会全局返回)。

您需要使用Doug R提供的代码(在实际的Erb文件中返回的逻辑测试)。