我有以下型号:
Trip -> has_many trip_members & belongs_to user
Trip -> has_many shares
Share -> belongs_to user
在我的旅行模型中,我正在建立这样的关系
has_many :shares, :conditions => proc { |user| {:user_id => user.id} }
这样我总是有一个与共享关联的用户。我试图通过在调用 trip.shares(user) 时传入一个用户对象来访问它,但这似乎不起作用。这个传递给 proc 的参数是如何工作的?
另外,这是设置条件的正确方法吗?我想过重写生成的方法(例如 trip.shares<< 等)以包含作为参数传入的用户,但这感觉不对。