我使用 Capistrano 进行部署:cap int deploy
。
然后,我将其作为我的database.yml
文件
default: &default
adapter: postgresql
pool: 5
timeout: 5000
sqlserver: &sqlserver
adapter: sqlserver
timeout: 5000
database: Consumer
username: '<%= ENV['DB_USERNAME'] %>'
password: '<%= ENV['DB_PASSWORD'] %>'
development:
<<: *default
database: some_dev_db
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: some_test_db
int:
<<: *sqlserver
host: some_int_db
我的 Gemfile 如下:
source 'https://rubygems.org'
gem 'rails', '4.1.1'
gem 'rails-api'
gem 'tiny_tds'
gem 'activerecord-sqlserver-adapter', git: 'https://github.com/rails-sqlserver/activerecord-sqlserver-adapter'
gem 'unicorn'
gem 'active_model_serializers'
gem 'figaro'
gem 'faker'
gem 'spring', group: :development
group :development, :test do
gem 'pry'
gem 'pry-nav'
gem 'pg'
end
group :deployment do
gem 'capistrano'
gem 'hipchat'
end
在我的服务器上运行 bundle install
后,我最初尝试做一些事情,但我得到一个错误,它需要 gem pg 0.17.1
。然后,我执行了 bundle install --without development test
因为我不需要在服务器上安装 PG。
即使我执行诸如 bundle exec RAILS_ENV=INT rake db:migrate
之类的操作并尝试打开 int 环境控制台,我仍继续了解我的服务器需要 pg 的事实。为什么会这样?
最佳答案
尝试改变它
default: &default
adapter: postgresql
pool: 5
timeout: 5000
对此
default: &default
adapter: sqlserver
pool: 5
timeout: 5000
为我工作。
关于ruby-on-rails - 服务器需要 postgres,即使我在其上使用 sqlserver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24640356/