Ruby on rails Rails:带&;的条件语句&;及||
我目前有:Ruby on rails Rails:带&;的条件语句&;及||,ruby-on-rails,ruby,ruby-on-rails-3.2,Ruby On Rails,Ruby,Ruby On Rails 3.2,我目前有: <% if h.ab_template.AB_filterParent == 0 && h.status != 'geo_enabled' %> 我想说的是如果h.ab_template.ab_filterParent==0 | | nil。我该怎么做 我试过了,但没用: <% if (h.ab_template.AB_filterParent == 0 || nil) && h.status != 'geo_enabl
<% if h.ab_template.AB_filterParent == 0 && h.status != 'geo_enabled' %>
我想说的是如果h.ab_template.ab_filterParent==0 | | nil。我该怎么做
我试过了,但没用:
<% if (h.ab_template.AB_filterParent == 0 || nil) && h.status != 'geo_enabled' %>
我很想知道我输入的错误或实现的错误
干杯如果您确定
h.ab_template.ab_filterParent
始终是一个数字(可以用引号括起来),那么您可以尝试以下操作
<% if h.ab_template.AB_filterParent.to_i == 0 && h.status != 'geo_enabled' %>
一般来说,零和零的意思不应该是同一件事。通过在迁移表中指定一个默认值零,尝试在执行此代码之前消除AB_filterParent不为零的可能性。我不知道你的模型是怎样的,所以我甚至不能展示一个如何做的例子。 使用
to_i==
0的主要问题是,它仅在AB_filterParent为整数或nil时有效
0.5.to_i == 0
"asdasd".to_i == 0
所以这很奇怪
另一种方法是在操作或其他模型方法中,甚至在创建回调之后对其进行初始化。
h.ab\u template.ab\u filterParent.to\u i==0
感谢您的回复!
0.5.to_i == 0
"asdasd".to_i == 0