sql >> Database >  >> RDS >> PostgreSQL

Meerdere PostgreSQL-schema's gebruiken met Rails-modellen

Lost PostgreSQL-adapter schema_search_path in database.yml uw probleem op?

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

Of u kunt voor elk schema verschillende verbindingen specificeren:

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"

Maak na elke gedefinieerde verbinding twee modellen:

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

En al uw modellen erven van het respectievelijke schema:

class MyModelFromPublic < PublicSchema
  set_table_name :my_table_name
end

class MyOtherModelFromDiscoGs < DiscoGsSchema
  set_table_name :disco
end

Ik hoop dat het helpt.



  1. Selecteer statement om duplicaten op bepaalde velden te vinden

  2. Partitioneren op een budget

  3. FOUT 1698 (28000):Toegang geweigerd voor gebruiker 'root'@'localhost'

  4. STR_TO_DATE() Voorbeelden – MySQL