sno*_*bra 22 gem ruby-on-rails railstutorial.org
我是rails的新手,并通过Hartl的教程.一切都很好,直到我第二次尝试做教程并创建了另一个试图使用最新版本的rails的项目.当我尝试rails server
从app文件夹加载时,我收到以下错误.
$ rails s
=> Booting WEBrick
=> Rails 4.0.4 application starting in development on
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
Exiting
/Users/sierra/Desktop/sample_app_2/config/environments/development.rb:1:in
`<top (required)>': undefined method `configure' for
#<SampleApp2::Application:0x00000101a74610> (NoMethodError)
Run Code Online (Sandbox Code Playgroud)
我的Gemfile直接来自Hartl教程:
source 'https://rubygems.org'
ruby '2.1.0'
#ruby-gemset=railstutorial_rails_4_0
gem 'rails', '4.0.4'
group :development, :test do
gem 'sqlite3', '1.3.8'
gem 'rspec-rails', '2.13.1'
end
group :test do
gem 'selenium-webdriver', '2.35.1'
gem 'capybara', '2.1.0'
end
gem 'sass-rails', '4.0.1'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.1'
gem 'jquery-rails', '3.0.4'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'
group :doc do
gem 'sdoc', '0.3.20', require: false
end
group :production do
gem 'rails_12factor', '0.0.2'
end
Run Code Online (Sandbox Code Playgroud)
Muh*_*jaz 57
我通过以下步骤解决了这个问题.
第1步:转到Project_Root_Directory/config/environment/development.rb
改变这一行
Rails.application.configure do
Run Code Online (Sandbox Code Playgroud)
至
Your_Rails_Application_Folder_name::Application.configure do
Run Code Online (Sandbox Code Playgroud)
例如,我的rails项目文件夹名称是'Spree_demo',因此以下行中的Your_Rails_Application_Folder_name:
Your_Rails_Application_Folder_name::Application.configure do
Run Code Online (Sandbox Code Playgroud)
将被替换为
SpreeDemo::Application.configure do
Run Code Online (Sandbox Code Playgroud)
注意:请参阅应用程序文件夹名称中的下划线.
希望它适合你们.
小智 6
首先在Rails new之前设置Ruby版本
我有同样的问题,我尝试了给出的答案,但没有任何影响.我甚至尝试更改名称以摆脱下划线,它没有任何影响.
问题是你这样做了:
$ rails new app_name
但你的ruby版本可能是2.1.1或其他东西.你想做:
$ rvm 2.0.0
在运行新应用程序之前,然后在Gemfile中设置2.0.0时(正如Hartl推荐的那样)它就会到位.
我不知道为什么会这样,我希望有人会对此有所了解,但我可以告诉你,这比目前处于领先地位的答案更有效.
小智 5
这也发生在我身上。问题是我使用了一个版本的 Rails 来创建项目。然后我将 Gemfile 更改为使用另一个版本的 Rails,系统使用它来搭建或运行服务器。新手问题!始终使用相同的版本应该可以解决问题。:-)
归档时间: |
|
查看次数: |
21754 次 |
最近记录: |