0
我在ruby应用程序中使用will_paginate gem,并且大部分工作正常。但是当我没有登录用户时,我遇到了麻烦。使用will_paginate与作用域,未定义的方法错误
该应用程序是一个reddit类型的东西,包含主题和相关的帖子和评论。
在我的主题模式,我有以下几点:
class Topic < ActiveRecord::Base
has_many :posts, dependent: :destroy
scope :visible_to, -> (user) {user ? all : :publicly_viewable}
scope :publicly_viewable, -> {where(public: true)}
scope :privately_viewable, -> {where(public: false)}
end
在我TopicsController:
class TopicsController < ApplicationController
require 'will_paginate/array'
def index
@topics = Topic.visible_to(current_user).paginate(page: params[:page], per_page: 10)
authorize @topics
end
当我链接到主题上单击无CURRENT_USER,按照我的理解,“用户“应该返回零,这应该是一个功能记录。应该返回只有public_viewable的主题。但是,我发现了以下错误消息:
undefined method `paginate' for :publicly_viewable:Symbol
我想也许我处理的是一个数组,所以我在“需要‘will_paginate /阵’”加,但是这并没有帮助。
有没有人有任何想法?
谢谢。