class ActiveAdmin::Views::IndexAsTable::IndexTableFor
methods for quickly displaying items on the index page
Extend the default ActiveAdmin::Views::TableFor with some
def actions(options = {}, &block)
link_to 'Grant Admin', grant_admin_admin_user_path(admin_user)
actions :defaults => false do |admin_user|
# Custom actions without the defaults.
end
link_to 'Grant Admin', grant_admin_admin_user_path(admin_user)
actions do |admin_user|
# Append some actions onto the end of the default actions.
actions
# Add default links.
Add links to perform actions.
def actions(options = {}, &block) options = { :name => "", :defaults => true }.merge(options) column options[:name] do |resource| text_node default_actions(resource) if options[:defaults] text_node instance_exec(resource, &block) if block_given? end end
def default_actions(*args)
def default_actions(*args) links = proc do |resource| links = ''.html_safe if controller.action_methods.include?('show') && authorized?(ActiveAdmin::Auth::READ, resource) links << link_to(I18n.t('active_admin.view'), resource_path(resource), :class => "member_link view_link") end if controller.action_methods.include?('edit') && authorized?(ActiveAdmin::Auth::UPDATE, resource) links << link_to(I18n.t('active_admin.edit'), edit_resource_path(resource), :class => "member_link edit_link") end if controller.action_methods.include?('destroy') && authorized?(ActiveAdmin::Auth::DESTROY, resource) links << link_to(I18n.t('active_admin.delete'), resource_path(resource), :method => :delete, :data => {:confirm => I18n.t('active_admin.delete_confirmation')}, :class => "member_link delete_link") end links end options = args.extract_options! if options.present? || args.empty? actions options else links.call(args.first) end end
def id_column
def id_column column(resource_class.human_attribute_name(resource_class.primary_key), :sortable => resource_class.primary_key) do |resource| link_to resource.id, resource_path(resource), :class => "resource_id_link" end end
def selectable_column
def selectable_column return unless active_admin_config.batch_actions.any? column( resource_selection_toggle_cell, { :class => "selectable" } ) { |resource| resource_selection_cell( resource ) } end
def status_tag(*args, &block)
end
end
post.published? ? 'published' : 'draft'
i.status_tag do |post|
index do |i|
end
i.status_tag "State", :status_name
index do |i|
end
i.status_tag :state
index do |i|
Display A Status Tag Column
def status_tag(*args, &block) col = Column.new(*args, &block) data = col.data col.data = proc do |resource| status_tag call_method_or_proc_on(resource, data) end add_column col end