GSt*_*Sto 6 ruby gem ruby-datamapper
我试着通过以下教程了解Sinatra ruby框架:
http://net.tutsplus.com/tutorials/ruby/singing-with-sinatra-the-recall-app-2/
然而,在运行gem安装并在test.rb中编写一个简单的sinatra服务器后,如下所示:
require 'sinatra'
require 'datamapper'
get '/' do
"Hello, World!"
end
Run Code Online (Sandbox Code Playgroud)
但是当我运行命令时ruby 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 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>'
Run Code Online (Sandbox Code Playgroud)
好像它找不到datamapper gem.我怎样才能解决这个问题?
编辑:使用ruby 1.9.2
编辑(再次) :( parital)输出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)
Run Code Online (Sandbox Code Playgroud)
mat*_*att 26
你需要require 'data_mapper',而不是datamapper.
请注意,有一个datamapper宝石和一个data_mapper宝石,但它们是相同的,只是不同的名称.您需要data_mapper在两者中使用库名称.
据我所知,这datamapper是一个简单的副本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'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4863 次 |
| 最近记录: |