Sha256: cca25ab6c84c0e4ab70193b49a8093cbd38133206fbf528ab149745df84906d5

Contents?: true

Size: 1.2 KB

Versions: 4

Compression:

Stored size: 1.2 KB

Contents

Canard::Abilities.for(<%= ":#{name}" -%>) do
<% if ability_definitions.empty? -%>
  # Define abilities for the user role here. For example:
  #
  #   if user.admin?
  #     can :manage, :all
  #   else
  #     can :read, :all
  #   end
  #
  # The first argument to `can` is the action you are giving the user permission to do.
  # If you pass :manage it will apply to every action. Other common actions here are
  # :read, :create, :update and :destroy.
  #
  # The second argument is the resource the user can perform the action on. If you pass
  # :all it will apply to every resource. Otherwise pass a Ruby class of the resource.
  #
  # The third argument is an optional hash of conditions to further filter the objects.
  # For example, here the user can only update published articles.
  #
  #   can :update, Article, published: true
  #
  # See the wiki for details: https://github.com/CanCanCommunity/cancancan/wiki/Defining-Abilities
<% else -%>
<% definitions do |model, definition| -%>
  <%= "can #{definition.cans.map(&:to_sym)}, #{model.classify}" unless definition.cans.empty? %>
  <%= "cannot #{definition.cannots.map(&:to_sym)}, #{model.classify}" unless definition.cannots.empty? %>
<% end -%>
<% end -%>
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
canard-0.6.2.pre lib/generators/canard/ability/templates/abilities.rb.erb
canard-0.6.1.pre lib/generators/canard/ability/templates/abilities.rb.erb
canard-0.6.0.pre lib/generators/canard/ability/templates/abilities.rb.erb
canard-0.5.0.pre lib/generators/canard/ability/templates/abilities.rb.erb