Module: Apartment
- Extended by:
- Forwardable
- Defined in:
- lib/apartment.rb,
lib/apartment/railtie.rb,
lib/apartment/version.rb,
lib/apartment/database.rb,
lib/apartment/migrator.rb,
lib/apartment/reloader.rb,
lib/apartment/elevators/domain.rb,
lib/apartment/delayed_job/hooks.rb,
lib/apartment/elevators/generic.rb,
lib/apartment/delayed_job/enqueue.rb,
lib/apartment/elevators/host_hash.rb,
lib/apartment/elevators/subdomain.rb,
lib/apartment/adapters/mysql2_adapter.rb,
lib/apartment/adapters/postgis_adapter.rb,
lib/apartment/adapters/sqlite3_adapter.rb,
lib/apartment/delayed_job/requirements.rb,
lib/apartment/adapters/abstract_adapter.rb,
lib/apartment/elevators/first_subdomain.rb,
lib/apartment/adapters/jdbc_mysql_adapter.rb,
lib/apartment/adapters/postgresql_adapter.rb,
lib/apartment/adapters/abstract_jdbc_adapter.rb,
lib/apartment/adapters/jdbc_postgresql_adapter.rb,
lib/generators/apartment/install/install_generator.rb
Defined Under Namespace
Modules: Adapters, Database, Delayed, Elevators, Migrator
Classes: AdapterNotFound, ApartmentError, DJSerializationError, DatabaseExists, DatabaseNotFound, InstallGenerator, Railtie, Reloader, SchemaExists, SchemaNotFound
Constant Summary
collapse
- ACCESSOR_METHODS =
[:use_schemas, :seed_after_create, :prepend_environment, :append_environment]
- WRITER_METHODS =
[:database_names, :database_schema_file, :excluded_models, :default_schema, :persistent_schemas, :connection_class]
- VERSION =
"0.22.1"
Class Method Summary
collapse
Class Method Details
configure apartment with available options
20
21
22
|
# File 'lib/apartment.rb', line 20
def configure
yield self if block_given?
end
|
.connection_class ⇒ Object
42
43
44
|
# File 'lib/apartment.rb', line 42
def connection_class
@connection_class || ActiveRecord::Base
end
|
.database_names ⇒ Object
Be careful not to use ‘return` here so both Proc and lambda can be used without breaking
25
26
27
|
# File 'lib/apartment.rb', line 25
def database_names
@database_names.respond_to?(:call) ? @database_names.call : @database_names
end
|
.database_schema_file ⇒ Object
46
47
48
49
50
|
# File 'lib/apartment.rb', line 46
def database_schema_file
return @database_schema_file if defined?(@database_schema_file)
@database_schema_file = Rails.root.join('db', 'schema.rb')
end
|
.default_schema ⇒ Object
34
35
36
|
# File 'lib/apartment.rb', line 34
def default_schema
@default_schema || "public"
end
|
.excluded_models ⇒ Object
30
31
32
|
# File 'lib/apartment.rb', line 30
def excluded_models
@excluded_models || []
end
|
.persistent_schemas ⇒ Object
38
39
40
|
# File 'lib/apartment.rb', line 38
def persistent_schemas
@persistent_schemas || []
end
|
.reset ⇒ Object
Reset all the config for Apartment
53
54
55
|
# File 'lib/apartment.rb', line 53
def reset
(ACCESSOR_METHODS + WRITER_METHODS).each{|method| remove_instance_variable(:"@#{method}") if instance_variable_defined?(:"@#{method}") }
end
|
.use_postgres_schemas ⇒ Object
57
58
59
60
|
# File 'lib/apartment.rb', line 57
def use_postgres_schemas
warn "[Deprecation Warning] `use_postgresql_schemas` is now deprecated, please use `use_schemas`"
use_schemas
end
|
.use_postgres_schemas=(to_use_or_not_to_use) ⇒ Object
62
63
64
65
|
# File 'lib/apartment.rb', line 62
def use_postgres_schemas=(to_use_or_not_to_use)
warn "[Deprecation Warning] `use_postgresql_schemas=` is now deprecated, please use `use_schemas=`"
self.use_schemas = to_use_or_not_to_use
end
|