0

I installed ruby 1.9.3 by means of rvm. But in case of errors, I've got messages of the following form

/home/railstest/vendor/bundle/ruby/1.9.1/gems/activerecord-3.1.0
/lib/active_record/base.rb:1082:in `method_missing': undefined method
`mass_assignment_sanitizer=' for ActiveRecord::Base:Class (NoMethodError)

The question is: what this 1.9.1 stands for? Seems to be a ruby version, but mine is 1.9.3. Does it mean that somehow ruby 1.9.1 gets called instead of 1.9.3?

rvm lists the following:

rvm list

rvm rubies

=* ruby-1.9.3-p392 [ x86_64 ]

# => - current
# =* - current && default
#  * - default
Andrew
  • 2,148
  • 5
  • 23
  • 34

3 Answers3

2

The fact that you have 1.9.1 in your path does not mean that you are using ruby 1.9.1 - it's the Ruby compatibility version.

Jon Cairns
  • 11,783
  • 4
  • 39
  • 66
1

The version component in the path does not specify the exact Ruby version used but specified the "library compatible version". This indicates that the library API of Ruby version 1.9.1, 1.9.2 and 1.9.3 are similar enough that they could (theoretically) share the same gems.

The actual Ruby version can differ from that path component. Yopu can check the ruby version by running

ruby --version
Holger Just
  • 52,918
  • 14
  • 115
  • 123
0

Probably you did not activate that version.

Activate your version using following command.

rvm use 1.9.3

To set this version default, run

rvm use --default 1.9.3
HungryCoder
  • 7,506
  • 1
  • 38
  • 51