打了个 gem 包 需要加载 kaminari
如果在 .gemspec 里写上
spec.add_dependency 'kaminari'
bundle install 就可以正常执行了。 但是在项目里仍然需要添加
gem 'kaminari'
否则会提示
undefined method `page' for #<ActiveRecord::Relation []>
求正确的打开方式。
your_gem/lib/your_gem.rb
require 'kaminari'
我猜是这样的,每个项目可能对同一个 library version 的依赖不一,所以还需要根据依赖声明文件 (比如 gemfile)load,而且是根据 version 去 load。
#1 楼 @richfisher 3x
正确的解答在这里:
bundle 命令在 install 的时候,是依据运行命令的当前目录的 gemfile 里面的声明来安装 gem 的。
gemspec 是该 gem 包被使用时候的依赖声明。