在 Ruby 中可以做到这样的事情吗
if @subscription.state = ['trail', 'active']
#Do something
end
应该是不言自明的。
在 Ruby 中可以做到这样的事情吗
if @subscription.state = ['trail', 'active']
#Do something
end
应该是不言自明的。
也许:
['trail', 'active'].include?(@subscription.state)
你可以使用include?
ruby的方法Array
if ['trail', 'active'].include?(@subscription.state)
#do something
end
尝试Array#include来检查这一点。
if ['trail', 'active'].include? @subscription.state
#Do something
end
我强烈建议阅读镐书,因为这是一个基本的 Ruby 问题。
你也可以使用:Enum#any?
@subscription = false
#=> false
[true,false].any? {|x| x == @subscription }
#=> true
@subscription = true
#=> true
[true,false].any? {|x| x == @subscription }
#=> true
@subscription = 15
#=> 15
[true,false].any? {|x| x == @subscription }
#=> false
if [true,false].any? {|x| x == @subscription } then
p "hi"
else
p "hello"
end
#"hello"
#=> "hello"