ruby – 轨道宝石(一般):宝石如何工作?
我一直在使用Rails一段时间,并且一直在我的gemfile中使用宝石,但我从来没有真正了解我安装的gem的功能实际上是如何可用的.说我使用has_permalinks宝石(
http://haspermalink.org/).它提供了一个.generate_permalink!我的模型的方法这个方法在哪里定义?如何才能突然使用这种方法只是安装宝石?是否有某种include / require / load来初始化gem的代码,使其可以被其他应用程序访问?另外,在安装宝石的时候这个代码存储在哪里?
解决方法
我单独回答了你的问题,不合时宜,但我认为这样做可能会使这个顺序更容易理解答案.
如果您使用Bundler,您可以执行bundle show_permalink,并将显示该gem的安装位置.这是我用pg gem做的例子: ? bundle show pg /Users/jasonswett/.rvm/gems/ruby-1.9.2-p320@jason/gems/pg-0.11.0
如果你做捆绑显示的东西,它返回一个路径 – 该方法被定义在某处. (您可以使用grep -r’def generate_permalink’/ gem / path找到所需的位置.)
看看这部分关于Rails初始化过程的文档:
看起来像在这个过程中相当早,Rails看着你的Gemfile,并通过Bundler加载所有的宝石.所以有你的包括. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |