如何停止安装sqlite3适配器:`gem install activerecord-sqlite3-adapter'在服务器上 [英] how to stop the install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` on the server

查看:97
本文介绍了如何停止安装sqlite3适配器:`gem install activerecord-sqlite3-adapter'在服务器上的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在生产模式下部署应用程序,但是当我尝试完成该过程时,遥遥表明对sqlite适配器的需求,请问有人知道如何停止此问题?

I'm deploying a app on production mode but when i try to finish the process the aways show this need for sqlite adapter, please someone know how to stop this issue?

我一直在使用RAILS_ENV = production,但在这种情况下不起作用.

i've been using RAILS_ENV=production but in this case did not worked.

current$ rails generate admin_interface:setup RAILS_ENV=production
DEPRECATION WARNING: Support for Rails < 4.1.0 will be dropped. (called from warn at /home/ubuntu/.rbenv/versions/2.2.2/lib/ruby/2.2.0/forwardable.rb:183)
/home/ubuntu/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:322:in `block in replace_gem': Please install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` (sqlite3 is not part of the bundle. Add it to Gemfile.) (LoadError)
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/activerecord-3.2.22/lib/active_record/connection_adapters/sqlite3_adapter.rb:3:in `<top (required)>'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/backports-3.6.8/lib/backports/std_lib.rb:9:in `require'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/backports-3.6.8/lib/backports/std_lib.rb:9:in `require_with_backports'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/activesupport-3.2.22/lib/active_support/dependencies.rb:251:in `block in require'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/activesupport-3.2.22/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/activesupport-3.2.22/lib/active_support/dependencies.rb:251:in `require'
    from /home/ubuntu/vitrineonline/releases/10/vendor/bundle/ruby/2.2.0/gems/activerecord-3.2.22/lib/active_record/connection_adapters/abstract/connection_specification.rb:50:in `resolve_hash_connection'

推荐答案

我看到的第一个问题是您应该在命令的开头放置 RAILS_ENV 声明,因为这将为命令的寿命.

The first issue I see is that you should put the RAILS_ENV declaration at the beginning of your command as this sets that variable for the life of the command.

RAILS_ENV=production bundle exec rails generate admin_interface:setup

这可能完全是根本原因.(还要注意使用 bundle exec 来确保正确加载了Gemfile中指定的gemset)

This could be the root cause entirely. (Also note the use of bundle exec to be sure that the gemset specified in the Gemfile is properly loaded)

如果要为外壳设置它,请运行:

If you want to set it for the shell, run:

export RAILS_ENV=production

因此您不必为每个命令手动设置它.

So you don't have to manually set it for every command.

第二种可能性是数据库适配器配置不正确.如果这是Ruby on Rails应用程序,则在 config/database.yml 中定义数据库适配器.如果未指定,则可能默认为sqlite3.确保您已正确设置了database.yml文件.

The second possibility is that the database adapter is not properly configured. If this is a Ruby on Rails app, the database adapter is defined in config/database.yml. If not specified, it may be defaulting to sqlite3. Make sure you have a properly setup database.yml file.

production:
  adapter: postgresql
  database: rails4_stack
  username: myusername
  password: mypassword
  pool: 5
  timeout: 5000
  encoding: utf8
  reconnect: false

这篇关于如何停止安装sqlite3适配器:`gem install activerecord-sqlite3-adapter'在服务器上的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆