Ruby on rails 删除具有活动记录关系的变量中的第一条和最后一条记录时,Pull停止工作

Ruby on rails 删除具有活动记录关系的变量中的第一条和最后一条记录时,Pull停止工作,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,在模型中,我具有以下范围: scope :rent_conditions, ->(all_rent_conditions, arguments) { where(all_rent_conditions, arguments) } 我称之为范围: Rent.rent_conditions(all_rent_conditions, arguments).order(fermetraverd: :asc) 在控制器变量中: @rent_filter_results 从租金搜索中接收10个活

在模型中,我具有以下范围:

scope :rent_conditions, ->(all_rent_conditions, arguments) { where(all_rent_conditions, arguments) }
我称之为范围:

Rent.rent_conditions(all_rent_conditions, arguments).order(fermetraverd: :asc)
在控制器变量中:

@rent_filter_results
从租金搜索中接收10个活动记录关系

现在我想从搜索中删除第一条和最后一条记录,以便:

Rent.rent_conditions(all_rent_conditions, arguments).order(fermetraverd: :asc).values_at(1..8)
记录2-9正确返回控制器

但是在我删除第一条和最后一条记录之前,Pulk在下面的语句中抛出了一个错误:

size = @rent_filter_results.pluck(:flatarmal)  
错误是:

undefined method `pluck' for #<Array:0x007faa293e3ac0>
未定义的用于#

似乎Pulk正在尝试访问我试图丢弃的第一张唱片。或者也许我不完全明白发生了什么。有人能解释并建议我如何放弃第一个和最后一个活跃的记录关系,让Pull继续工作吗

实际上
values\u at
将对象从
ActiveRelation
转换为
Array
。您可以尝试以下代码

Rent.rent_conditions(all_rent_conditions, arguments).order(fermetraverd: :asc).offset(1).limit(8)
然后可以对结果调用
pull
。i、 e:

size = @rent_filter_results.pluck(:flatarmal)