1

config/database.yml ファイルに

# SQLite version 3.x
#   gem install sqlite3
#
#   Ensure the SQLite 3 gem is defined in your Gemfile
#   gem 'sqlite3'
development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

# 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:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

otherdb:
  adapter: sqlite3
  database: /c/Users/dsun/Documents/apeers/db/development.sqlite3
  pool: 5
  timeout: 10000

私のモデルでは、次の方法で新しいデータベースを呼び出します。establish_connection :otherdb

しかし、これはエラーを返します。database configuration does not specify adapter

では、sqlite3 が一度に 2 db を使用できないのは問題ですか?

もしそうなら、どうすればこれを修正できますか。

4

1 に答える 1

1

はい、もちろんですが、各モデルで使用するデータベースを定義する必要があります。メソッド Establish_connection を使用して、現在のモデルを使用するデータベースを定義できます。詳細はこちらhttp://api.rubyonrails.org/classes/ActiveRecord/Base.html。ただし、複数のベース アクティブ レコード クラスを作成してそれぞれにデータベース名を定義し、それらからモデル クラスを継承することをお勧めします。

于 2013-04-04T20:59:55.303 に答える