新安装的will_paginate 3.0.0
gem 'will_paginate', '~> 3.0.0', :require=>'will_paginate/data_mapper'
运行控制器查询:
@tickets = Ticket.paginate(:page => params[:page], :per_page => 5,:username => @ticket.username)
哪个有效,如果我放了?页面= X,其中x是网址中的页码,那么为5个用户提取所有门票和分页。
=will_paginate(@tickets)
在视图中不起作用,这导致
undefined method `will_paginate' for #<#<Class:0x000000053674c8>:0x0000000535cd48>
所以will_paginate可以工作,但不是视图助手。我错过了什么吗?如果这有任何区别,我会使用纤细的模板。我缺少一些语法变化吗?文档很简单,但在此之后无益。我查看了源代码,似乎没有任何变化,但我无法理解为什么它无法访问
然后在切线上,这与一个联想混淆。
=&GT; @ instance.model_belonging_to_instance.create(:文本=&GT; '测试')
TypeError: can't convert nil into Integer
from /home/qx/.rvm/gems/ruby-1.9.2-p180/gems/will_paginate-3.0.0/lib/will_paginate/page_number.rb:16:in `Integer'
etc etc et al
解决方案:
的Gemfile:
gem 'will_paginate', '~> 3.0.0' # removed this, :require=>'will_paginate/data_mapper'
初始化器:
require 'will_paginate'
require 'will_paginate/data_mapper'
它会显示,但如果不是在模板的顶部,我会得到一个
堆栈级别太深错误我无法解释
答案 0 :(得分:2)
不要在Gemfile中使用:require选项,正如您已经想到的那样;而是在config / application.rb中的某处需要“will_paginate / data_mapper”,例如在Bundler设置之后。
答案 1 :(得分:0)
有一个类似的问题,答案表明这里的自动要求是问题所在。有关问题和答案,请参阅will_paginate undefined method. The Will_paginate gem appears to work though。
答案 2 :(得分:0)
gem 'will_paginate', '~> 3.0.0', require: %w[
will_paginate
will_paginate/data_mapper
]