LoadError:无法加载这样的文件 - data_mapper为什么?

时间:2014-02-10 20:34:06

标签: ruby sqlite sinatra datamapper shotgun

我正在使用Sinatra应用程序,我想使用data_mapper& sqlite3的。 在app.rb我有:

require 'sinatra'
require 'data_mapper'
当我执行$ gem list时,在控制台中

(列表有些编辑以反映db gems:
*本地宝石*

activemodel (4.0.2)
activerecord (4.0.2)
activerecord-deprecated_finders (1.0.3)
activesupport (4.0.2)
addressable (2.3.5)
arel (4.0.2)
atomic (1.1.14)
bcrypt-ruby (3.1.2)
bigdecimal (1.2.3)
buftok (0.2.0)
builder (3.1.4)
bundler (1.5.3)
bundler-unload (1.0.2)
cookiejar (0.3.0)
daemons (1.1.9)
data_mapper (1.2.0)
data_objects (0.10.13)
descendants_tracker (0.0.3)
dm-aggregates (1.2.0)
dm-constraints (1.2.0)
dm-core (1.2.1)
dm-do-adapter (1.2.0)
dm-migrations (1.2.0)
dm-serializer (1.2.2)
dm-sqlite-adapter (1.2.0)
dm-timestamps (1.2.0)
dm-transactions (1.2.0)
dm-types (1.2.2)
dm-validations (1.2.0)
do_sqlite3 (0.10.13)
fastercsv (1.5.5)
gem-wrappers (1.2.4)
http (0.5.0)
http_parser.rb (0.6.0)
i18n (0.6.9)
io-console (0.4.2)
json (1.8.1)
json_pure (1.8.1)
memoizable (0.4.0)
mini_portile (0.5.2)
minitest (4.7.5)
multi_json (1.8.4)
multipart-post (2.0.0)
oauth (0.4.7)
pg (0.17.1)
rack (1.5.2)
rack-protection (1.5.2)
rake (10.1.0)
rdoc (4.1.0)
rubygems-bundler (1.4.2)
rvm (1.11.3.8)
shotgun (0.9)
simple_oauth (0.2.0)
sinatra (1.4.4)
sinatra-activerecord (1.3.0)
sqlite3 (1.3.8)

当我去irb并且需要data_mapper时我得到=>“true”但是,当我通过浏览器访问应用程序时,我得到:LoadError:无法加载此类文件 - data_mapper。从我所读到的这个问题通常是需要'datamapper'而不是require'data_mapper'的结果。我做错了什么?

1 个答案:

答案 0 :(得分:0)

尝试要求dm-sqlite-adapterDocs ter

你已经获得了宝石,但在代码中没有要求它。我不知道这是否会解决它,但在最近的一个项目中,适配器是我们需要在控制器中明确要求的。