我刚刚创建了一个新的创业板(使用捆绑器)并希望添加Active Record支持。所以我将s.add_dependency "activerecord", "~> 3.0"
添加到我的gemspec中。然后我使用Bundler.setup和Bundler.require,并认为我现在可以访问Active Record,但我没有。我必须明确使用require "active_record"
。任何想法为什么Bundler.require在这种情况下不适用于我?Bundler.require不适用于我的创业板中的ActiveRecord
3
A
回答
11
首先,如果您打包宝石,do not use Bundler.require
。 Bundler.require
仅适用于应用程序,不适用于宝石。
在
.gemspec
,指定部署宝石的依赖关系。在你
Gemfile
,包括线gemspec
自动在您的Gemfile
在.gemspec
列出的依赖关系。您也可以选择为开发和测试创建gem组。
在您的代码中,明确
require
您需要的任何库。
我在今天失去了几个小时,所以我希望这有助于。
其次,虽然创业板的ActiveRecord被称为 “ActiveRecord的” 的lib被称为 “active_record”。这是你需要在Gemfile
。
gem 'activerecord', :require => "active_record"
除非你包括:require
选项,ActiveRecord的将不被正确加载,你不会知道它,直到你尝试使用它。
1
如果你想使用捆扎机,你需要用ActiveRecord
gem 'activerecord', "~> 3.0.0"
定义你的Gemfile或者您需要定义捆绑使用您的gemspec在你的Gemfile添加gemspec
gemspec
0
我有这个问题,在我的情况下,问题是,我是在我的宝石活动记录命名的目录,如:
lib ->
active_record ->
base.rb <- containing some monkey patches to base
这是造成包括像甜蜜的错误消息传惑:
Gem Load Error is: uninitialized constant ActiveRecord::Base
Did you mean? ActiveRecord::Base
简单地将文件从lib/active_record/base.rb
更改为lib/active_record_base.rb
为我修复。
相关问题
- 1. Oracle绑定变量不适用于ActiveRecord
- 2. 如何使当地的创业板适用于rails应用程序?
- 3. 适用于商业Web应用程序的CSS /其他模板
- 4. DataType编辑器模板不适用于创建的DOM元素
- 5. XSLT模板不适用于新创建的元素
- 6. qq jambi中的findChild()不适用于我
- 7. Django 1.3中的i18n不适用于我
- 8. AS3打印作业不适用于Chrome
- 9. JQuery Datepicker只适用于IE8(不适用Firefox,不适用于我)
- 10. 适用于商业应用的PostgreSQL/Ruby
- 11. Facebook的创业板的Rails应用
- 12. 适用于Java的Linux shell作业API
- 13. CodeIgniter - ActiveRecord order_by()适用于所有查询,而不仅仅是我想要的
- 14. 它适用于jsfiddle,但不适用于我的网站
- 15. jQuery代码适用于jsFiddle,但不适用于我的网站
- 16. 适用于非企业级客户的企业应用程序?
- 17. Ruby on Rails的:作用于创业板加标签,在模型
- 18. webview不适用于我
- 19. ReactiveUI WhenAnyObservable不适用于我
- 20. SSLStrip不适用于我
- 21. AngularJS ngRoute不适用于我
- 22. asyncTask不适用于我
- 23. glMaterialfv不适用于我
- 24. CV_CAP_OPENNI不适用于我
- 25. AngularJS jsonp不适用于我
- 26. file_exists不适用于我
- 27. 过时的Ruby创业板,我如何分享我的变化?
- 28. 我应该如何创建适用于不同平台的Javascript?
- 29. FaceNormalsHelper()不适用于我创建的网格物体 - THREE.js
- 30. 框架功能不适用于我创建的框架对象
我的Gemfile中已经有gemspec(bundler会自动为新创建的gem做这件事),所以这不是问题。 – Zardoz 2010-10-25 17:14:13