如何检查关联更改使用rails中的mongodb

时间:2016-10-03 07:56:22

标签: ruby-on-rails ruby ruby-on-rails-4

我有一个模型,我希望在关联更改时回调。

class Database
  include Mongoid::Document

  field :name, type: String

  belongs_to :user

  after_save :do_something if user_id_changed?  #or 'if user_changed?'

  def do_something
    #do something here
  end

end 

当我运行代码时错误: undefined method 'user_id_changed?' for Database:Class 如何检查关联更改使用mongodb。 TKS

2 个答案:

答案 0 :(得分:0)

应该是:

after_save :do_something, if: :user_id_changed?

有关详情,请查看此documentation

答案 1 :(得分:0)

为了能够使用changed?,您需要将您的Document类设为< ActiveRecord::Base或使用http://edgeapi.rubyonrails.org/classes/ActiveModel/Dirty.html