2

createモデルのメソッドに何かを追加すると

note.rb

def self.create p
    p 'in self.create'
    super p
end

user.rb

has_many :notes

を呼び出すたびに実行されますNote.create。しかしcreate、のようにアソシエーションを呼び出すと、current_user.notes.create実行されません。何故ですか?

4

1 に答える 1

2

アソシエーションメソッドを再定義するには、新しいメソッドを持つブロックをアソシエーションcreateに渡すことができます。createhas_many

user.rb:

has_many :notes do
  def create
    p '123'
    super
  end
end
于 2012-12-02T12:56:05.097 に答える