首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActiveModel关联搜索

ActiveModel关联搜索
EN

Stack Overflow用户
提问于 2017-04-24 12:36:20
回答 1查看 137关注 0票数 0

我也曾见过类似的问题,但与我的问题完全不同。如果这是一份副本,我很抱歉-如果是的话,请让我回答。

我需要通过客户名称搜索订单,两者之间的链接是用户。以下是我的模特:

代码语言:javascript
复制
class Customer < ApplicationRecord
  belongs_to :user
end

class User < ApplicationRecord
  has_one :customer
  has_many :orders
end

class Order < ApplicationRecord
  belongs_to :user
end

我试图用以下方法搜索:

代码语言:javascript
复制
@orders = Order.joins(:user).joins(:customers).where('last_name LIKE ?', name[0])

但我收到了错误信息-

不能加入“Order”来联系名为“customers”的组织,也许你拼错了它?

我确信我没有正确的联想,但我不知道该如何做。谢谢你能提供的任何建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-24 12:58:51

请尝尝这个。

代码语言:javascript
复制
Order.joins(user: [:customer]).where(customer: {last_name: name[0]})

我从thisthis那里得到了帮助

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43588263

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档