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)
end
item 'Grant Admin', grant_admin_admin_user_path(admin_user)
actions defaults: false do |admin_user|
# Custom actions without the defaults.
end
a 'Grant Admin', href: grant_admin_admin_user_path(admin_user)
actions do |admin_user|
# Append some actions onto the end of the default actions using arbre dsl.
end
item 'Grant User', grant_user_admin_user_path(admin_user)
item 'Grant Admin', grant_admin_admin_user_path(admin_user)
actions do |admin_user|
# Append some actions onto the end of the default actions.
actions name: 'A title!'
# Add default links with a custom column title (empty by default).
actions
# Add default links.
```ruby
Add links to perform actions.
def actions(options = {}, &block) name = options.delete(:name) { "" } defaults = options.delete(:defaults) { true } column name, options do |resource| insert_tag(TableActions, class: "data-table-resource-actions") do render "index_table_actions_default", defaults_data(resource) if defaults if block block_result = instance_exec(resource, &block) text_node block_result unless block_result.is_a? Arbre::Element end end end end
def defaults_data(resource)
def defaults_data(resource) localizer = ActiveAdmin::Localizers.resource(active_admin_config) { resource: resource, view_label: localizer.t(:view), edit_label: localizer.t(:edit), delete_label: localizer.t(:delete), delete_confirmation_text: localizer.t(:delete_confirmation) } end
def id_column
def id_column raise "#{resource_class.name} has no primary_key!" unless resource_class.primary_key column(resource_class.human_attribute_name(resource_class.primary_key), sortable: resource_class.primary_key) do |resource| if controller.action_methods.include?("show") link_to resource.id, resource_path(resource) elsif controller.action_methods.include?("edit") link_to resource.id, edit_resource_path(resource) else resource.id end end end
def selectable_column(**options)
def selectable_column(**options) return unless active_admin_config.batch_actions.any? column resource_selection_toggle_cell, class: options[:class], sortable: false do |resource| resource_selection_cell resource end end