所以我是rails的新手,我实际上正在关注Lynda.com的视频教程,以便学习它。我没有按照安装在视频上的步骤进行操作,因为我听说过RVM,到目前为止它已经完成了所有设置。但是我仍然在视频的早期,并且无法通过一些非常简单的事情......所以我希望有人可以帮助我。
有一些背景:
我安装并创建了RVM 1.8.7@rails2.3.8。我能够安装ruby和rails,以及 这里的一切都很好。我什至 为mysql和。设置全局gemset 乘客。
我正在使用乘客代替 WEBrick(本教程使用)和 我甚至能够得到apache 加载模块,一切都是 我创建导轨时工作正常 应用程序。我可以去simple-cms.local和我 请参阅介绍页面。
所以这就是问题所在。在关注视频的同时,我到了script/generate controller say
的位置,它创建了控制器,没有错误。然后我继续在控制器中定义一个动作“hello”,并在app / view / say文件夹中定义相应的视图“hello.rhtml”。
现在,当我尝试访问simple-cms.local时,它仍然有效,但是当我尝试访问simple-cms.local / say / hello.rhtml时,我收到错误!
Ruby on Rails应用程序不可能 开始
申请已退出 启动(即评估期间) 配置/ environment.rb中)。错误 消息可以在下面找到。要解决 这个问题,请关注任何 错误消息中的说明。
错误消息:缺少Rails 2.3.8 宝石。请
gem install -v=2.3.8 rails
,更新您的RAILS_GEM_VERSION 在config / environment.rb中设置 你有Rails版本 安装或注释掉 RAILS_GEM_VERSION使用最新版本 安装版本。
那我该怎么办?我的意思是安装了rails 2.3.8,为什么它会告诉我再次安装它?
更新
我在app目录中运行了gem environment
并获得了此
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.7
- RUBY VERSION: 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10.4.0]
- INSTALLATION DIRECTORY: /Users/user/.rvm/gems/ruby-1.8.7-p302@rails2
- RUBY EXECUTABLE: /Users/user/.rvm/rubies/ruby-1.8.7-p302/bin/ruby
- EXECUTABLE DIRECTORY: /Users/user/.rvm/gems/ruby-1.8.7-p302@rails2/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-darwin-10
- GEM PATHS:
- /Users/user/.rvm/gems/ruby-1.8.7-p302@rails2
- /Users/user/.rvm/gems/ruby-1.8.7-p302@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
然后运行script/console
,然后运行Gems.path
,返回
["/Users/user/.rvm/gems/ruby-1.8.7-p302@rails2", "/Users/user/.rvm/gems/ruby-1.8.7-p302@global"]
对我来说很好,你呢?
更新2:
好的,所以没有什么对我有用!我还没有尝试过Passenger Standalone,但是我需要使用apache,我读到它独立使用nginx。我到目前为止尝试的是从头开始,rvm implode
然后再安装rvm,ruby 1.8.7,passenger,mysql,rails 2.3.8,就是这样。访问我的应用程序时,我仍然无法通过默认页面!然后我也尝试按照Chris Johnsen在评论中链接的指南无效。
欢迎所有想法......
答案 0 :(得分:1)
问题是我正在将乘客安装到全球宝石集中,这应该不是问题,但确实如此。
我从全局gemset中卸载了乘客,并将其安装到我正在使用的项目gemset中。这解决了丢失的rails gem错误,现在我在尝试访问simple-cms.local / say / hello时遇到500错误。我将为此创建一个新问题,并将此标记解决!
答案 1 :(得分:0)
尝试Phusion Passenger Standalone。每个实例都将使用当前加载的RVM和gemset。