【问题标题】:deprecation warning in RailsRails 中的弃用警告
【发布时间】:2011-09-30 23:10:03
【问题描述】:

我是 Rails 和一般编程的新手(目前正在学习使用 3.0.1 和 ruby​​ 1.9.2 的书)。

当我执行 rake db:migrate 命令时,我收到了以下弃用警告。我不确定这是否是因为我使用的是稍旧版本的 Rails,或者无论版本如何都会发生。无论如何,谁能告诉我如果我现在应该做什么?

由于我是新手,因此非常感谢您提供详细的答案。干杯

$ rake db:migrate


WARNING: Global access to Rake DSL methods is deprecated.  Please include
    ...  Rake::DSL into classes and modules which use the Rake DSL methods.
WARNING: DSL method SampleApp::Application#task called at /Users/michaeljohnmitchell/.rvm/gems/ruby-1.9.2-p290@rails3/gems/railties-3.0.1/lib/rails/application.rb:214:in `initialize_tasks'

使用 rakefile 更新

# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.

require File.expand_path('../config/application', __FILE__)
require 'rake'

SampleApp::Application.load_tasks

【问题讨论】:

  • 能否请您出示您的 rakefile?
  • 我已经用我的 rake 文件更新了 OP。感谢您的关注。

标签: ruby-on-rails


【解决方案1】:

假设您使用的是 Rake 0.9.x,您有两个选择:

  1. 至少升级到 rails 3.0.8(修复了与 Rake 0.9.x 的集成,如 here 所述)。这可以通过将 gem 文件更改为 gem rails, '3.0.8'(或更高版本)并运行 bundle install 来实现。

  2. 您可以降级到 Rake 0.8.x 来修复此警告,但我强烈推荐第一个选项。

【讨论】:

  • 好的。谢谢,我只使用 rails 3.0.1 来跟随这本书。我稍后会升级
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-23
  • 2013-12-20
  • 1970-01-01
  • 2017-03-06
相关资源
最近更新 更多