block总是返回true

Tar*_*her 1 ruby-on-rails

将始终返回true并擦除整个数组

<% users.delete_if do |user| %>
  <% false %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

另一方面

<%
users.delete_if do |user|
  false
end
%>
Run Code Online (Sandbox Code Playgroud)

有效并且不会删除数组.

我可以以某种方式在我的视图中使用delete_if语句,仍然能够插入HTML吗?

谢谢

Ron*_*era 6

您不应该在视图中修改数据 - 而是在控制器或模型中执行此操作.仅使用视图来反映数据库的当前状态,而不是更改它.

如果您在其中任何一个位置使用代码的第二个版本,则此问题将消失.