现在我有以下内容:
<% if !@thread.nil? && @thread.name == 'X' || @thread.name == 'Y' %>
....
这里的问题是,我相信无论 !@thread.nil?,@thread.name 仍然会被调用,这会导致错误。
正确的写法是这样的:
<% if !@thread.nil? && @thread.name == ('X' || 'Y') %>
某种类型包含在列表中?对于 thread.name?
谢谢
最佳答案
如果 !@thread.nil? && ['x','Y'].include?(@thread.name)
关于ruby-on-rails - ruby,如何使用 AND & OR 构建 if block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6820573/