【发布时间】:2011-04-26 11:51:35
【问题描述】:
我在一整年前启动了一个 Rails 应用程序。这是一个 Rails 2.3 应用程序。
现在,其他人进行了远程更改(它在 Github 上,抱歉,但它是私有的)。我已经完成了
sudo gem update
也就是说,更新了我所有的 gem,包括 Rails(到 3 个)。
意识到这一点,我做到了
rake:freeze:edge RELEASE=2.3.8
或任何使此版本使用该版本的 rails 的东西,希望这是解决方案。
然而,到目前为止还没有这样的运气。
我在尝试启动服务器并尝试运行 script/console 时遇到错误(尽管它更多成功)。
请注意,这个确切的应用程序在 EngineYard 上运行良好。
服务器:
$ script/server
=> Booting Mongrel
=> Rails 2.3.8 application starting on http://0.0.0.0:3000
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/yaml.rb:133:in `load': syntax error on line 45, col 3: `' (ArgumentError)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/yaml.rb:133:in `load'
from /Users/ajh/Sites/PROJECT_NAME/config/../vendor/rails/railties/lib/initializer.rb:902:in `database_configuration'
from /Users/ajh/Sites/PROJECT_NAME/config/../vendor/rails/railties/lib/initializer.rb:437:in `initialize_database'
from /Users/ajh/Sites/PROJECT_NAME/config/../vendor/rails/railties/lib/initializer.rb:141:in `process'
from /Users/ajh/Sites/PROJECT_NAME/config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from /Users/ajh/Sites/PROJECT_NAME/config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from /Users/ajh/Sites/PROJECT_NAME/config/environment.rb:11
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'
from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:521:in `new_constants_in'
from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'
from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/railties/lib/commands/server.rb:84
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
from script/server:3
控制台:
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/yaml.rb:133:in load':ArgumentError: syntax error on line 45, col 3:rai'
当我在控制台中尝试使用已定义的模型时:
@mm = MyModel.find(:all) NameError:未初始化的常量 MyModel 来自 /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:443:in
load_missing_constant' from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:80:inconst_missing' 来自 /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:92:in `const_missing' 来自 (irb):1
【问题讨论】:
-
您可以发布完整的 database.yml 文件吗?
-
乍一看,您的 yaml.rb 中似乎发生了一些事情。你能在 irb 中要求它并加载一个简单的 YAML 文件吗?
-
谢谢,加勒特;我在我的 database.yml 中发现了一个流浪的
end关键字和一些其他的可疑之处。删除它就可以了。非常感谢你们,以及所有看过的人!
标签: ruby-on-rails