class Apartment::Elevators::Subdomain
Assumes that database name should match subdomain
Provides a rack based db switching solution based on subdomains
def call(env)
def call(env) request = ActionDispatch::Request.new(env) database = subdomain(request) Apartment::Database.switch database if database @app.call(env) end
def initialize(app)
def initialize(app) @app = app end
def subdomain(request)
def subdomain(request) request.subdomain.present? && request.subdomain || nil end