在 Heroku 中部署时出现 Sinatra Datamapper 错误
Sinatra Datamapper errors when deploying in Heroku
所以我尝试在 Heroku 上部署我的网络应用程序,但我不断收到这些错误:
app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:163:in require': cannot load such file -- dm-sqlite-adapter (LoadError)
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:163:in load_adapter'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:133:in adapter_class'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:13:in new'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core.rb:230:in setup'
from /app/index.rb:13:in <top (required)>'
from /app/config.ru:1:in require'
from /app/config.ru:1:in block in <main>'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in instance_eval'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in initialize'
from /app/config.ru:in new'
from /app/config.ru:in <main>'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in eval'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in new_from_string'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:40:in parse_file'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:299:in build_app_and_options_from_config'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:208:in app'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:336:in wrapped_app'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:147:in start'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:272:in start'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/bin/rackup:4:in `<top (required)>'
from /app/vendor/bundle/ruby/2.1.0/bin/rackup:23:in load'from /app/vendor/bundle/ruby/2.1.0/bin/rackup:23:in `<main>'
我知道 Heroku 不能与 sqlite 一起使用,这就是我按照建议切换到 postgresql 的原因。但这只会让这更奇怪,因为我什至没有使用 sqlite。 :S
建议?
我认为 dm-sqlite-adapter
是从您的 Gemfile
引用的,或者是从代码中的其他地方引用的,可能是您配置数据映射器的地方。或者它可能是数据映射器 YAML 配置中的引用,如果你有的话。
所以我尝试在 Heroku 上部署我的网络应用程序,但我不断收到这些错误:
app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:163:in require': cannot load such file -- dm-sqlite-adapter (LoadError)
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:163:in load_adapter'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:133:in adapter_class'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core/adapters.rb:13:in new'
from /app/vendor/bundle/ruby/2.1.0/gems/dm-core-1.2.1/lib/dm-core.rb:230:in setup'
from /app/index.rb:13:in <top (required)>'
from /app/config.ru:1:in require'
from /app/config.ru:1:in block in <main>'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in instance_eval'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:55:in initialize'
from /app/config.ru:in new'
from /app/config.ru:in <main>'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in eval'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:49:in new_from_string'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/builder.rb:40:in parse_file'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:299:in build_app_and_options_from_config'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:208:in app'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:336:in wrapped_app'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:147:in start'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/lib/rack/server.rb:272:in start'
from /app/vendor/bundle/ruby/2.1.0/gems/rack-1.6.4/bin/rackup:4:in `<top (required)>'
from /app/vendor/bundle/ruby/2.1.0/bin/rackup:23:in load'from /app/vendor/bundle/ruby/2.1.0/bin/rackup:23:in `<main>'
我知道 Heroku 不能与 sqlite 一起使用,这就是我按照建议切换到 postgresql 的原因。但这只会让这更奇怪,因为我什至没有使用 sqlite。 :S
建议?
我认为 dm-sqlite-adapter
是从您的 Gemfile
引用的,或者是从代码中的其他地方引用的,可能是您配置数据映射器的地方。或者它可能是数据映射器 YAML 配置中的引用,如果你有的话。