我有一个Membership
模型,我有以下回调:
after_create :setup_connection, unless: Proc.new { self.connection_exists }
这是被调用的方法:
def connection_exists
Connection.where("membership_id = ? OR invited_membership_id = ?", self.id, self.id).count > 0 ? true : false
end
但这是我想要作为回调运行的查询,但无法弄清楚如何将对象传递给我想要的。
Connection.where("invited_membership_id = ?", resource.id)
如何将resource
或user
的等效内容传递到after_create
模型Membership
上运行的回调中?
答案 0 :(得分:1)
在after_create
回调中已经设置了关联,您无需将任何对象传递给回调,因为您的成员资格已经知道谁是resource
或user
Connection.where("invited_membership_id = ?", self.resource.id)