【问题标题】:Rails upgrade from 2.3.4 to 2.3.8 issueRails 从 2.3.4 升级到 2.3.8 问题
【发布时间】:2014-01-23 13:53:21
【问题描述】:

我正在尝试将我的应用从 Rails 2.3.4 升级到 2.3.8..

我进入 environment.rb 文件,并改变了

RAILS_GEM_VERSION = '2.3.4' unless defined? RAILS_GEM_VERSION

RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION

我需要做点别的吗?

我正在使用 MySQL 服务器版本:5.1.47

我没有使用捆绑器

我在 OS X 10.6.6 上运行

这是我的 database.yml,它与我在 2.3.8(而不是升级)中创建的 WORKING 应用程序相匹配

development:
  adapter: mysql
  encoding: utf8
  reconnect: false
  database: _development
  pool: 5
  username: root
  password:
  socket: /tmp/mysql.sock

当我这样做时,我加载的任何页面都会出现相同的错误。通过尝试从数据库中构建/检索模型可以实现相同的错误,错误是:

>> Company.new
NoMethodError: undefined method `retrieve_connection' for nil:NilClass
    from /Library/Ruby/Gems/1.8/gems/activesupport-2.3.8/lib/active_support/whiny_nil.rb:52:in `method_missing'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/connection_adapters/abstract/connection_specification.rb:123:in `retrieve_connection'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/connection_adapters/abstract/connection_specification.rb:115:in `connection'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:1301:in `columns'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:3055:in `attributes_from_column_definition_without_lock'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/locking/optimistic.rb:66:in `attributes_from_column_definition'
    from /Library/Ruby/Gems/1.8/gems/activerecord-2.3.8/lib/active_record/base.rb:2469:in `initialize'
    from (irb):1:in `new'
    from (irb):1

编辑:来自 environment.rb 的宝石列表

  config.gem "authlogic"
  config.gem "hpricot"
  config.gem "BlueCloth", :lib => 'bluecloth'
  config.gem "daemons"
  config.gem "gravtastic", :version => '2.2.0'
  config.gem "json"
  config.gem "ruby-rapleaf"
  config.gem "ar-extensions"
  config.gem "url_shortener"
  config.gem 'aws-s3', :version => '>= 0.6.2', :lib => 'aws/s3'
  config.gem 'paperclip', :version => '>= 2.3.1.1'
  config.gem 'omniauth'

【问题讨论】:

  • 这是类似的:stackoverflow.com/questions/2892977/updating-rails-to-2-3-6 -- 你能在你的 application.rb 中发布你的 gem 吗?
  • 这很可能是问题所在。 Gems 通常在 environment.rb 中指定,发布其内容。
  • 我刚刚注释掉了所有的宝石,我得到了同样的错误..

标签: ruby-on-rails


【解决方案1】:

这不是 GEM,它实际上是一个插件。 ACL9 现在有一个 GEM,当我最初开始使用它时,我只能以插件形式找到它。所以,对于任何通过的人..

我有 ACL9 插件 v .11,Rails 2.3.4

升级到 Rails 2.3.8 并且必须安装 ACL9 gem,当前版本为 v .12

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    • 2014-01-30
    • 2015-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多