account_location
account_location copied to clipboard
NOTICE: official repository moved to https://github.com/bbommarito/account_location
Account Location
Account location is a set of protected methods that supports the account-key-as-subdomain way of identifying the current scope. These methods allow you to easily produce URLs that match this style and to get the current account key from the subdomain.
The methods are: account_url, account_host, and account_domain.
Example:
class ApplicationController < ActionController::Base include AccountLocation before_filter :find_account
protected
def find_account
@account = Account.find_by_username(account_subdomain)
end
end
class AccountController < ApplicationController def new @new_account = Account.create(params[:new_account]) redirect_to :host => account_host(@new_account.username), :controller => "weblog" end
def authenticate
session[account_domain] = :authenticated
redirect_to :controller => "weblog"
end
protected
def authenticated?
session[account_domain] == :authenticated
end
end
The view:
Your domain: <%= account_url %>
By default, all the methods will query for @account.username as the account key, but you can specialize that by overwriting default_account_subdomain. You can of course also pass it in as the first argument to all the methods.
Copyright (c) 2005 David Heinemeier Hansson, released under the MIT license