PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Menggunakan beberapa skema PostgreSQL dengan model Rails

Schema_search_path adaptor PostgreSQL di database.yml menyelesaikan masalah Anda?

development:
  adapter: postgresql
  encoding: utf-8
  database: solidus
  host: 127.0.0.1
  port: 5432
  username: postgres
  password: postgres
  schema_search_path: "discogs,public"

Atau, Anda dapat menentukan koneksi yang berbeda untuk setiap skema:

public_schema:
  adapter: postgresql
  encoding: utf-8
  database: solidus
  host: 127.0.0.1
  port: 5432
  username: postgres
  password: postgres
  schema_search_path: "public"

discogs_schema:
  adapter: postgresql
  encoding: utf-8
  database: solidus
  host: 127.0.0.1
  port: 5432
  username: postgres
  password: postgres
  schema_search_path: "discogs"

Setelah setiap koneksi ditentukan, buat dua model:

class PublicSchema < ActiveRecord::Base
  self.abstract_class = true
  establish_connection :public_schema
end

class DiscoGsSchema < ActiveRecord::Base
  self.abstract_class = true
  establish_connection :discogs_schema
end

Dan, semua model Anda mewarisi dari skema masing-masing:

class MyModelFromPublic < PublicSchema
  set_table_name :my_table_name
end

class MyOtherModelFromDiscoGs < DiscoGsSchema
  set_table_name :disco
end

Semoga membantu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. apa urutan pelarian untuk tanda hubung (-) di PostgreSQL

  2. Mendapatkan tanggal dengan offset zona waktu

  3. Permintaan SQL untuk menemukan catatan dengan ID tidak di tabel lain

  4. PostgreSql 'PDOException' dengan pesan 'tidak dapat menemukan driver'

  5. Scaling PostgreSQL Menggunakan Connection Poolers &Load Balancers