【发布时间】:2015-11-21 17:08:00
【问题描述】:
不确定执行此操作的最佳方法 - 我有一个 where 子句,我需要使用两个模型才能获得自动完成的列表结果。我有一个“会员”模型,其中包含“用户”参考或“会员”参考(user_id 为 nil 或 member_id 为 nil,但不能同时包含两者)。
我需要列出 current_user 的用户名和成员名,如果不是 nil 或 member_id,则分别提取 user_id。
我尝试在 where 子句中添加 &&,但它似乎不起作用
User.where(id: current_user.memberships.pluck(&:user_id)) && Member.where(id: current_user.memberships.pluck(&:member_id)
我怎样才能完成这项工作并使其成为 Railsy?
【问题讨论】:
-
你的 && 表示你想加入 2 个查询或其他什么?
-
“它似乎不起作用” 并不是很有帮助。什么不起作用?你有错误吗?
-
是的。我需要列出成员和用户的名称,具体取决于 user_id 或 member_id 在成员资格记录中是否有引用 - 我需要将它们列为一个集合。
-
这里的关系是什么,你能解释一下吗:例如:用户有很多成员,Membership属于一个成员,MemberShip属于一个用户?
-
@mike0416 你能试试我的答案,让我知道这是否适合你吗?如果没有,请告诉我你想要什么。我会尝试更新我的答案。
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 ruby-on-rails-3.2