如果模型发生变化,请停止循环

时间:2016-12-16 12:06:09

标签: ruby-on-rails loops activemodel

如果模型发生变化,我正试图退出循环。

拥有status属性:

@model.status = 'started'

(0..100).each do |i|
  return if status == 'stopped'
  sleep(10)  
  # my taks...
end

问题是,一旦started模型中的变化没有反映在循环内,有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您需要查询循环内的状态,以便获得更新状态。

(0..100).each do |i|
  status = Model.find(:id).status
  return if status == 'stopped'
  sleep(10)  
  # my taks...
end