簡體   English   中英

我的本地Rails環境出了什么問題?

[英]What’s wrong with my local Rails environment?

我一年前開始有一個Rails應用程序。 這是一個Rails 2.3應用程序。

現在,其他人進行了遠程更改(抱歉,該更改在Github上,但是是私有的)。 我做了

sudo gem update

也就是說,將我所有的寶石,包括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:來自/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:in未初始化常量MyModel來自/Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:92:in的load_missing_constant' from /Users/ajh/Sites/PROJECT_NAME/vendor/rails/activesupport/lib/active_support/dependencies.rb:80:in const_missing' (irb)中的const_missing:1

我只是遇到了這個錯誤,結果是我在數據庫.yml文件中使用了一個制表符而不是一個雙空格。 以為我會提到它,以防其他人遇到同樣的麻煩。

我的database.yml有一個流浪end關鍵字。 清理該文件解決了我的問題。 感謝Garrett為我指出正確的方向!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM