Rails 2.3.9,添加了ActiveScaffold,获取了'alias_method':类'Paginator'的未定义方法`number_of_pages'

时间:2010-10-14 19:23:18

标签: ruby-on-rails

我有AS(作为插件)在另一个应用程序中工作很好(我不记得了 问题...) - 它也在同一开发盒上使用Rails 2.3.9。

现在尝试将其添加到新应用并在运行时收到此错误 webrick,脚本/服务器:

/Users/kimptoc/.rvm/gems/ruby-1.8.7-p302/gems/activesupport-2.3.9/lib/
active_support/core_ext/module/aliasing.rb:33:in `alias_method':
undefined method `number_of_pages' for class `Paginator' (NameError)
        from /Users/kimptoc/.rvm/gems/ruby-1.8.7-p302/gems/
activesupport-2.3.9/lib/active_support/core_ext/module/aliasing.rb:
33:in `alias_method_chain'
        from /Users/kimptoc/Documents/ruby/borisbikestats/vendor/plugins/
active_scaffold/lib/extensions/paginator_extensions.rb:9

我找不到任何先前对此错误的引用。

令人尴尬的是我不知道我成功使用哪个版本的AS ...它在CHANGELOG文件中说明了1.2RC1,但我似乎记得尝试了一些分叉......(有什么地方我可以看到哪个分叉正在使用......)。我尝试在新项目中使用'main'activescaffold,但是它失败了,但是使用工作项目中的相同插件也是如此:(

提前感谢任何关于我做错事的指示。

谢谢, 克里斯

PS刚刚意识到新的Rails使用Rails 3而旧的/工作的是2.3.9。看来你需要为Rails 3使用AS的备用分支,如下所示:https://github.com/vhochstein/active_scaffold/wiki

1 个答案:

答案 0 :(得分:2)

这只是猜测,但我记得在Rails 2中删除了内置的分页,你需要安装classic_pagination插件才能恢复该功能。

我只使用过一次ActiveScaffold,但是那里的错误是paginator_extensions.rb ...它可能是猴子修补旧的Rails分页器?因此该类存在,但number_of_pages方法不存在。