2015-04-12 2 views
3

Попытка заставить это работать, но у меня проблемы. Я, следуя инструкции по адресу: https://www.railstutorial.org/book/beginning#cha-beginningRails Tutorial Error With Cloud 9

Я получаю 1.3.2 и я тип:

rails server -b $IP -p $PORT 

Каких результатов в этих ошибках вместо WEBrick бега:

/usr/local/rvm/gems/[email protected]/gems/sass-rails-5.0.1/lib/sass/rails/helpers.rb:11:in `<top (required)>': uninitialized constant Sass::Script (NameError) 
     from /usr/local/rvm/gems/[email protected]/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `require' 
     from /usr/local/rvm/gems/[email protected]/gems/sass-rails-5.0.1/lib/sass/rails.rb:8:in `<top (required)>' 
     from /usr/local/rvm/gems/[email protected]/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `require' 
     from /usr/local/rvm/gems/[email protected]/gems/sass-rails-5.0.1/lib/sass-rails.rb:1:in `<top (required)>' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:76:in `require' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:76:in `block (2 levels) in require' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:72:in `each' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:72:in `block in require' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:61:in `each' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler/runtime.rb:61:in `require' 
     from /usr/local/rvm/gems/[email protected]/gems/bundler-1.7.6/lib/bundler.rb:133:in `require' 
     from /home/ubuntu/workspace/hello_app/config/application.rb:7:in `<top (required)>' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `require' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:78:in `block in server' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `tap' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:75:in `server' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!' 
     from /usr/local/rvm/gems/[email protected]/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>' 
     from /home/ubuntu/workspace/hello_app/bin/rails:8:in `require' 
     from /home/ubuntu/workspace/hello_app/bin/rails:8:in `<top (required)>' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `load' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `call' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/lib/spring/client.rb:26:in `run' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/bin/spring:48:in `<top (required)>' 
     from /usr/local/rvm/gems/ruby-2.1.5[email protected]/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `load' 
     from /usr/local/rvm/gems/[email protected]/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `<top (required)>' 
     from /home/ubuntu/workspace/hello_app/bin/spring:13:in `require' 
     from /home/ubuntu/workspace/hello_app/bin/spring:13:in `<top (required)>' 
     from bin/rails:3:in `load' 
     from bin/rails:3:in `<main>' 

Это кажется происходит только тогда, когда вы заменяете код Gemfile кодом, указанным для получения явной версии Ruby gems (код ниже).

источник «https://rubygems.org»

gem 'rails',    '4.2.0' 
gem 'sass-rails',   '5.0.1' 
gem 'uglifier',    '2.5.3' 
gem 'coffee-rails',   '4.1.0' 
gem 'jquery-rails',   '4.0.3' 
gem 'turbolinks',   '2.3.0' 
gem 'jbuilder',    '2.2.3' 
gem 'sdoc',     '0.4.0', group: :doc 

group :development, :test do 
    gem 'sqlite3',  '1.3.9' 
    gem 'byebug',  '3.4.0' 
    gem 'web-console', '2.0.0.beta3' 
    gem 'spring',  '1.1.3' 
end 

ответ

6

Похоже, учебник только недавно поссорился даты. Если вы обновляете ваш Gemfile от

gem 'sass-rails',   '5.0.1' 

в

gem 'sass-rails',   '5.0.2' 

затем Bundle установить снова и запустить сервер, он должен работать нормально.

(Если вы предпочитаете, вы можете также запустить обходной путь, добавив

gem 'sass', '3.4.13' 

до вашего существующего, необновляемой линии:

gem 'sass-rails',   '5.0.1' 

в вашем Gemfile, и делать пучок установки и запуск сервера. Не знаю, зачем вам это нужно.)

+1

Спасибо за решение. – Blobert

+1

Урок уже был обновлен исправлением (добавление 'gem 'sass'' в Gemfile), но это решение лучше. Теперь он добавлен в учебник. Благодаря! – mhartl

+2

Кстати, не совсем верно, что «учебник совсем недавно устарел». Более точное описание «кто-то, участвовавший в камне Сасса или другой части экосистемы Руби, внес изменения, которые нигде не должны были сломать, но сделали». Увы, это является равным курсу в Ruby-land - возможно, цена, за которую мы всегда платим [перемещение так быстро] (http://startupquote.com/post/1624569753). – mhartl

Смежные вопросы