Ruby on rails Rails中的分页:未定义的方法`总页数';对于[]:数组

Ruby on rails Rails中的分页:未定义的方法`总页数';对于[]:数组,ruby-on-rails,ruby,Ruby On Rails,Ruby,在我的Rails应用程序中,我需要根据一些条件执行搜索。因为我有数百万条记录,所以我需要执行分页。我试过will_paginate。我得到的输出是“[]:数组的未定义方法`total_pages” 我的控制器: class TweetsController<ApplicationController def index city = params[:show] search_term = params[:text] search_term.gs

在我的Rails应用程序中,我需要根据一些条件执行搜索。因为我有数百万条记录,所以我需要执行分页。我试过will_paginate。我得到的输出是“[]:数组的未定义方法`total_pages”

我的控制器:

class TweetsController<ApplicationController
  def index
    city = params[:show]
    search_term = params[:text]        

    search_term.gsub!(/\s/, '%')
    city_coordinates = Coordinates.where('city=?', city)

    @tweets = if (city_coordinates.count == 1 && city_coordinates.first.valid_location?)
      @tweets = Tweets.for_coordinates(city_coordinates.first).paginate(page: params[:page], per_page: 50) &  Tweets.where("tweet_text LIKE?" , "%#{search_term}%").paginate(page: params[:page], per_page: 50)
    else if (city_coordinates.count != 1 )
      @tweets = Tweets.for_user_location(city).paginate(page: params[:page], per_page: 50) &  Tweets.where("tweet_text LIKE?" , "%#{search_term}%").paginate(page: params[:page], per_page: 50)
    else
      @tweets = Tweets.where("tweet_text LIKE? ", "%#{search_term}%").paginate(page: params[:page], per_page: 50)
    end
    end
  end
end

类TweetsController
@tweets
是一个数组,默认情况下,
将分页
不使用数组。要启用此行为,请在
config/initializers
中添加一个新文件,并使用以下行:

require 'will_paginate/array'

@tweets
是一个数组,默认情况下,
将分页
不使用数组。要启用此行为,请在
config/initializers
中添加一个新文件,并使用以下行:

require 'will_paginate/array'

这个错误发生在哪里?代码中的第1行是供查看的,但我认为那里没有错误,请发布您的实际代码。您在此处发布的内容包含许多错误。这是我的实际代码,它在没有分页的情况下工作得非常好,但在分页时我遇到了此错误您的问题可能是因为您使用
&
将两个集合连接在一起,将其转换为一个数组,而不是一个将分页的集合。如果您不这样做,请尝试它是否有效。这个错误发生在哪里?它在查看代码中显示第1行,但我认为那里没有错误,请发布您的实际代码。您在此处发布的内容包含许多错误。这是我的实际代码,它在没有分页的情况下工作得非常好,但在分页时我遇到了此错误您的问题可能是因为您使用
&
将两个集合连接在一起,将其转换为一个数组,而不是一个将分页的集合。如果你不这样做,试试看是否有效。