这是if / else语句:
if number.events.blank?
Resque.enqueue(ProcessNumbers, number.id)
elsif number.events && !number.events.ordered.first.status.downcase.include? 'delivered'
Resque.enqueue(ProcessNumbers, number.id)
end
最终试图说:“如果number.events
为空,请运行enqueue
。或者如果number.events.ordered.first.status.downcase.include
包含'已发送'(但请确保number.events
确实有某些内容)。 “
答案 0 :(得分:2)
我不是Ruby开发人员,但似乎您number.events
中的elsif
检查是多余的,因为您的代码只会“落到”elsif
的情况下number.events
不是空白。由于你有一个if...or
的情况,更简洁的方式可能是:
if number.events.blank? || !number.events.ordered.first.status.downcase.include? 'delivered'
Resque.enqueue(ProcessNumbers,number.id)
答案 1 :(得分:0)
或者,
if !number.events.blank? && !number.events.ordered.first.status.downcase.include? 'delivered'
Resque.enqueue(ProcessNumbers, number.id)
这将确保number.events
确实有某些东西。