2010-04-02 81 views
3

创建时使用新的Rails项目:GEM版本要求弃用

rails sample 

然后创建使用模型:

script/generate model person first_name:string last_name:string 

一切都很好。不过,如果我添加任何宝石,我的environment.rb:

config.gem "authlogic" 

并运行相同的发电机,我得到如下:

/Library/Ruby/Gems/1.8/gems/rails- 2.3.5/lib目录/导轨/ gem_dependency.rb:119:警告: 宝石::依赖#version_requirements 已取消,将在 或之后2010年8月刚刚被删除

警告出现(我想想),但我如果可能的话,想修复它。任何提示或类似的经历?

谢谢。

回答

2

做了尝试:

耙宝石:安装

顺便说一句。如果你正在使用rubygems 1.3.6,那么你会得到这个弃用警告。以前的版本从未给出警告。另外我建议使用命令行安装任何gem,而不是将其添加到environment.rb文件中。如果您在文件中添加的gem没有安装,那么生成器或任何rake任务将不会运行。它是一个小错误。

这里是一个描述的方式,以防止该警告的文章: http://www.mattvsworld.com/blog/2010/03/version_requirements-deprecated-warning-in-rails/

它没什么大不了的,但。按正常方式安装gems,不要将任何内容添加到您的environment.rb文件中。你永远不会得到弃用警告。

+1

谢谢!我跟着几个链接,并得到了这个提交:http://github.com/rails/rails/commit/268c9040d5c3c7ed30f3923eee71a78eeece8a8a – 2010-04-05 15:40:15

2

这可能是无关紧要的,因为它是轨道3.0,但你正在寻找的答案是这样的文章: http://omgbloglol.com/post/353978923/the-path-to-rails-3-approaching-the-upgrade 下降了标题为“config.gem死了,万岁打捆”,虽然文章没有解释一些新的东西。

您可能需要考虑升级到rails 3.0,当您这样做时,您将在应用程序中使用Gemfile。在这里,你将要包括的行:

宝石“authlogic”

,然后在命令行上,运行

sudo的包安装

之后,都应该进行设置: )

1

把你的到config/environment.rb这些线路的引导和你的初始化之间将删除弃用警告:

if Gem::VERSION >= "1.3.6" 
    module Rails 
    class GemDependency 
     def requirement 
     super == Gem::Requirement.default ? nil : super 
     end 
    end 
    end 
end 
+0

与rails 2.3.5/ruby​​ 1.8.7-p370 – Mikey 2012-11-07 10:03:46