Sha256: e0380c3688a2434eaed8caf495f9606c2d32973a365c86a883f6ed6a70205e4c
Contents?: true
Size: 609 Bytes
Versions: 21
Compression:
Stored size: 609 Bytes
Contents
module Apartment module Elevators # Provides a rack based db switching solution based on subdomains # Assumes that database name should match subdomain class Subdomain def initialize(app) @app = app end def call(env) request = ActionDispatch::Request.new(env) database = subdomain(request) Apartment::Database.switch database if database @app.call(env) end def subdomain(request) request.subdomain.present? && request.subdomain || nil end end end end
Version data entries
21 entries across 21 versions & 2 rubygems