Ruby datamapper not loading

I tried to learn about the Sinatra Ruby framework by following this guide:

http://net.tutsplus.com/tutorials/ruby/singing-with-sinatra-the-recall-app-2/

however, after running gem install and writing a simple synatra server in test.rb, for example:

require 'sinatra' require 'datamapper' get '/' do "Hello, World!" end 

but when I run the ruby test.rb , I get the following error:

 /usr/local/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': no such file to load -- datamapper (LoadError) from /usr/local/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require' from datamapper_test.rb:2:in `<main>' glenn@ubuntu :~/Dropbox/Repositories/sandbox/sinatra$ ruby datamapper_test.rb /usr/local/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': no such file to load -- datamapper (LoadError) from /usr/local/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require' from test.rb:3:in `<main>' 

It seems that he cannot find the gem datamapper. how can i fix this?

EDIT : using ruby ​​1.9.2

EDIT (again) : (parital) output from gem list :

 data_mapper (1.2.0) data_objects (0.10.8) datamapper (1.2.0) devise (1.4.5) directory_watcher (1.4.0) dm-aggregates (1.2.0) dm-constraints (1.2.0) dm-core (1.2.0) dm-do-adapter (1.2.0) dm-migrations (1.2.0) dm-serializer (1.2.1) dm-sqlite-adapter (1.2.0) d m-timestamps (1.2.0) dm-transactions (1.2.0) dm-types (1.2.1) dm-validations (1.2.0) do_sqlite3 (0.10.8) sinatra (1.3.2, 1.2.6) sqlite3 (1.3.5, 1.3.4) sqlite3-ruby (1.3.3) 
+6
source share
2 answers

You need require 'data_mapper' , not datamapper .

Note that there is a datamapper , as well as a data_mapper , but they are the same thing, only different names. You need to use data_mapper as the library name in both of them.

As far as I can tell, datamapper is a direct copy of data_mapper :

 $ diff -r data_mapper-1.2.0/ datamapper-1.2.0/ diff -r data_mapper-1.2.0/Rakefile datamapper-1.2.0/Rakefile 21c21 < GEM_NAME = 'data_mapper' --- > GEM_NAME = 'datamapper' 
+27
source

gem install datamapper in your terminal may help :) But you also need a database and an adapter, and you want to use this stone somehow. Good luck and have fun with dm + sinatra!

0
source

Source: https://habr.com/ru/post/908927/


All Articles