Я получаю сообщение об ошибке при запуске `rails g` поверх ruby ​​1.8.7 (2011-12-28 patchlevel 357) [i386-mingw32] - PullRequest
0 голосов
/ 24 января 2012

В моей системе установлены оба ruby ​​1.8.7 и 1.9.2.У меня есть проект rails, который я изначально построил на ruby ​​1.9.2;но поскольку я слышал, что 1.8.7 быстрее, я пытаюсь переключиться и закончить его, используя ruby ​​1.8.7Однако всякий раз, когда я запускаю определенные команды, прямо сейчас в Rails g я получаю следующий вывод в моем терминале:

    C:\Users\Edu\workspace\tasks>rails g
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_support/depende
ncies.rb:234:in `load': C:/Users/Edu/workspace/tasks/config/initializers/session
_store.rb:3: syntax error, unexpected ':', expecting $end (SyntaxError)
...sion_store :cookie_store, key: '_tasks_session'
                              ^
        from C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_su
pport/dependencies.rb:234:in `load'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_su
pport/dependencies.rb:223:in `load_dependency'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_su
pport/dependencies.rb:640:in `new_constants_in'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_su
pport/dependencies.rb:223:in `load_dependency'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-3.1.1/lib/active_su
pport/dependencies.rb:234:in `load'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/engine.r
b:556
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/engine.r
b:555:in `each'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/engine.r
b:555
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/initiali
zable.rb:30:in `instance_exec'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/initiali
zable.rb:30:in `run'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/initiali
zable.rb:55:in `run_initializers'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/initiali
zable.rb:54:in `each'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/initiali
zable.rb:54:in `run_initializers'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/applicat
ion.rb:96:in `initialize!'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/railtie/
configurable.rb:30:in `send'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/railtie/
configurable.rb:30:in `method_missing'
        from C:/Users/Edu/workspace/tasks/config/environment.rb:5
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/applicat
ion.rb:83:in `require'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/applicat
ion.rb:83:in `require_environment!'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/railties-3.1.1/lib/rails/commands
.rb:22
        from script/rails:6:in `require'
        from script/rails:6

Из-за чтения других проблем это связано с тем, что 1.8 не понимает некоторый синтаксисрельсы 3.1.У меня вопрос, есть ли ресурсы для решения этой проблемы?Мне действительно нравится добавлять скорость 1.8.7 в мою разработку и тестирование приложений.если нет, есть ли другие предложения по ускорению моего развития?

1 Ответ

0 голосов
/ 24 января 2012

Вы (или кто-то еще) создали приложение, используя Ruby 1.9. Это означает, что он использует новую версию 1.9 хэшей (key: value), а не версию 1.8 (:key => value).

Вам нужно будет обновить это, чтобы оно было последним внутри config/initializers/session_store.rb, если вы хотите использовать это приложение на 1.8.7.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...