5

在我的模型中,我想检查应用程序是在 IRB 控制台内运行还是作为网站运行?

class MyModel < ActiveRecord::Base
  def xmethod
    if !isIRBconsol
      self.user_id = UserSession.find.user.id
    end
  end
end
4

3 回答 3

3

为什么不只是if defined?(IRB)

于 2011-08-04T20:13:44.827 回答
3

这有点小技巧,但它应该可以工作:

class MyModel < ActiveRecord::Base
  def am_i_in_irb?
    self.private_methods.include? 'irb_binding'
  end
end

但正如 Kathy Van Stone 上面所说,这可能是一个更好的解决方案。

于 2010-02-24T22:30:52.730 回答
0
unless self.private_methods.include? 'irb_binding'
   #put your rufus scheduling here
end
于 2016-02-17T10:48:39.770 回答