Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't run new application

I've installed RoR in my MacOS X using this guide http://ryanbigg.com/2010/12/ubuntu-ruby-rvm-rails-and-you/

Here my versions:

$ ruby --version
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
$ rails --version
Rails 3.2.3
$ gem --version
1.8.23

I was unable to run my app so I've googled and modified Gemfile using this tutorial: http://ruby.railstutorial.org/ruby-on-rails-tutorial-book

Now this is my Gemfile:

source 'https://rubygems.org'

gem 'rails', '3.2.3'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

group :development do
  gem 'sqlite3', '1.3.5'
end

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '3.2.4'
  gem 'coffee-rails', '3.2.2'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platform => :ruby

  gem 'uglifier', '1.2.3'
end

gem 'jquery-rails', '2.0.0'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'ruby-debug19', :require => 'ruby-debug'

When I run the app using

rails server

I got this:

=> Booting WEBrick
=> Rails 3.2.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting
/Library/Ruby/Gems/1.8/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load': /Users/giacomo/websrc/rubyrails-app/config/initializers/session_store.rb:3: syntax error, unexpected ':', expecting $end (SyntaxError)
...sion_store :cookie_store, key: '_rubyrails-app_session'
                              ^
    from /Library/Ruby/Gems/1.8/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load'
    from /Library/Ruby/Gems/1.8/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /Library/Ruby/Gems/1.8/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/engine.rb:588
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/engine.rb:587:in `each'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/engine.rb:587
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `instance_exec'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `run'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/initializable.rb:55:in `run_initializers'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `each'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `run_initializers'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/application.rb:136:in `initialize!'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in `send'
    from /Library/Ruby/Gems/1.8/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in `method_missing'
    from /Users/giacomo/websrc/rubyrails-app/config/environment.rb:5
    from /Users/giacomo/websrc/rubyrails-app/config.ru:4:in `require'
    from /Users/giacomo/websrc/rubyrails-app/config.ru:4
    from /Library/Ruby/Gems/1.8/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval'
    from /Library/Ruby/Gems/1.8/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize'
    from /Users/giacomo/websrc/rubyrails-app/config.ru:1:in `new'
    from /Users/giacomo/websrc/rubyrails-app/config.ru:1

How can I solve the problem?

like image 939
gsscoder Avatar asked Feb 17 '26 16:02

gsscoder


2 Answers

By using Ruby 1.9.x instead of 1.8.7.

Or by opening /Users/giacomo/websrc/rubyrails-app/config/initializers/session_store.rb and replacing:

key: '_rubyrails-app_session'

With:

:key => '_rubyrails-app_session'

And opening /Users/giacomo/websrc/rubyrails-app/config/initializers/wrap_parameters.rb and replacing:

wrap_parameters format: [:json]

With:

wrap_parameters :format => [:json]
like image 109
Mischa Avatar answered Feb 19 '26 05:02

Mischa


The error occurs because the new ruby has another syntax for hash. Tutorial that you used is outdated, I would suggest to try this: http://railsapps.github.com/installing-rails.html This is the best I could find. And also it is constantly updated.

In your case you need just to install new version of ruby and then reinstall rails.

like image 32
Mik Avatar answered Feb 19 '26 05:02

Mik