如何在子数据库的子数据库中搜索字段?父母>小孩>儿童

时间:2017-08-01 06:39:03

标签: ruby-on-rails activerecord

我的数据库结构如下:

投放:

  • ID
  • user_id

用户:

  • ID
  • COMPANY_ID

公司

  • ID
  • 名称

现在我正在为交付构建搜索查询:

elsif params[:option] == "company_name"

    @deliveries = Delivery.joins(company: :user)
    .paginate(:page => params[:page], :per_page => 20)
    .where("company.name LIKE ?", "%#{params[:q]}%")
    .order("created_at DESC")

现在,这不起作用。我要做的是根据公司名称过滤交货。我怎样才能做到这一点?搜索孩子的孩子内部的字段?

1 个答案:

答案 0 :(得分:1)

这是因为您需要提供表格companies并通过company加入user

elsif params[:option] == "company_name"

    @deliveries =
      Delivery.joins(user: :company)
        .paginate(:page => params[:page], :per_page => 20)
        .where("companies.name LIKE ?", "%#{params[:q]}%")
        .order("created_at DESC")