Rails 3.2 では、before_add コールバック内でオブジェクトの関連付けをトラバースする方法を探していました。
したがって、基本的に私のユースケースは次のとおりです。
class User < ActiveRecord::Base
has_and_belongs_to_many :meetings
end
class Meeting < ActiveRecord::Base
has_and_belongs_to_many :users
has_many :comments, :before_add => :set_owner_id
end
class Comment < ActiveRecord::Base
belongs_to :meeting
end
def set_owner_id(child)
child.owner_id = <<<THE USER ID for @user >>>
end
そして、ユーザーのコンテキスト内でコメントを作成しています:
@user.meetings.first.comments.create
before_add コールバック内から関連付けをトラバースして @user の ID を見つけるにはどうすればよいですか? これをモデルレベルで設定したい。私はproxy_associationを見てきましたが、何かが足りないかもしれません. 何か案は?