rails新手,在解决问题时遇到问题。如有任何帮助,我们将不胜感激。试图弄清楚如何获得以下数据。
我有以下表格
users表(所有用户及其工作的公司(:id用户名company_id
客户表(客户及其所属公司的列表(:idcompany_id
Mapping_user_to_client表(用户在哪个客户端上使用的表(:iduser_idclient_id
我能够在用户级别创建一个列表,显示用户工作的客户端。我遇到的问题是,我试图创建一个用户工作的公司的客户端列表,但该列表不是当前分配给用户的。
根据我在其他示例中看到的内容,我一直在尝试构建查询is rails控制台,类似于:Client.where(agency_id:1(,MappingUserToClient.where.not(user_id:2(。但这不起作用。我确信我做错了什么。如果有任何帮助或为我指明正确的方向,我将不胜感激。
谢谢!!!!
我假设您在Client
模型中与MappingUserToClient
有关联。即
class Client < ApplicationRecord
has_many :mapping_user_to_clients
end
然后您可以运行以下操作,它将返回agency_id
1的所有客户端以及未分配给user_id
2 的客户端
Client.joins(:mapping_user_to_clients)
.where(agent_id: 1)
.where.not('mapping_user_to_clients.user_id': 2)