Class: Tenantable::Vendor::Postgres
- Inherits:
-
Database::Adapter
- Object
- Database::Adapter
- Tenantable::Vendor::Postgres
- Defined in:
- lib/tenantable/vendor.rb
Class Method Summary collapse
- .create_schema(schema_name) ⇒ Object
- .database ⇒ Object
- .default_schema ⇒ Object
- .public_schema ⇒ Object
- .schemas ⇒ Object
Methods inherited from Database::Adapter
Class Method Details
.create_schema(schema_name) ⇒ Object
14 15 16 17 |
# File 'lib/tenantable/vendor.rb', line 14 def self.create_schema(schema_name) sql = %{CREATE SCHEMA "#{schema_name}" } ActiveRecord::Base.connection.execute sql end |
.database ⇒ Object
5 6 7 |
# File 'lib/tenantable/vendor.rb', line 5 def self.database :postgres end |
.default_schema ⇒ Object
23 24 25 |
# File 'lib/tenantable/vendor.rb', line 23 def self.default_schema %{"$user", public} end |
.public_schema ⇒ Object
19 20 21 |
# File 'lib/tenantable/vendor.rb', line 19 def self.public_schema "public" end |
.schemas ⇒ Object
9 10 11 12 |
# File 'lib/tenantable/vendor.rb', line 9 def self.schemas sql = "SELECT nspname FROM pg_namespace WHERE nspname !~ '^pg_.*'" ActiveRecord::Base.connection.query(sql).flatten end |