Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何使用ransack根据关联表筛选父表的记录?_Mysql_Ruby On Rails_Search_Filter_Ransack - Fatal编程技术网

Mysql 如何使用ransack根据关联表筛选父表的记录?

Mysql 如何使用ransack根据关联表筛选父表的记录?,mysql,ruby-on-rails,search,filter,ransack,Mysql,Ruby On Rails,Search,Filter,Ransack,我有一个名为“flights”的表,它与“tickets”有一对多关系,与“categories”有多对多关系,我想根据“location”和“class”过滤flights表,并根据价格过滤其关联表“tickets”,根据特定类别过滤categories表,仅应检索满足所有这些条件的航班,我的基于ransack的查询如下: @flights = Flight.joins(:tickets, :categories).ransack(class_cont: 'economy').

我有一个名为“flights”的表,它与“tickets”有一对多关系,与“categories”有多对多关系,我想根据“location”和“class”过滤flights表,并根据价格过滤其关联表“tickets”,根据特定类别过滤categories表,仅应检索满足所有这些条件的航班,我的基于ransack的查询如下:

   @flights = Flight.joins(:tickets, :categories).ransack(class_cont: 
    'economy').result(distinct: true).ransack(location_cont: 
    'USA').result(distinct: true).merge(Ticket.ransack(price_lt: '500').result(distinct: true)).merge(Category.ransack(name_cont: "travel").result(distinct: 
   true)).page(params[:page]).per(30)
它没有给出期望的结果。请同时检查它是否正确执行了ransack gem