47.23.5. Declarative Authorization

Do souboru config/environment.rb přidáme:

Rails::Initializer.run do |config|
    …
    config.gem "declarative_authorization", :source => "http://gemcutter.org"
    …

Gem nainstauljeme. Tady opět používám uživatelskou instalaci.

$ rake gems:install

Poté si vytvoříme konfigurační soubor config/authorization_rules.rb.

authorization do

    role :admin do
        has_permission_on [:articles,:comments], :to => [:index, :show, :new, :create, :edit, :update, :destroy]
    end
end

V modelu pak nastavíme

class User < ActiveRecord::Base
    act_as_authentic
    has_many :articles
    has_many :comments
    …
    has_many :roles, :through => :assignments

    def role_symbols
        roles.map do |role|
            rols.name.underscore.to_sym
        end
    end
end

To be done.

Licence Creative Commons
Tento dokument Ruby, jehož autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .