Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

activeadmin-orderable

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

activeadmin-orderable

  • 0.1.2
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

Active Admin Orderable

This gem extends ActiveAdmin so that your index page's table rows can be orderable via a drag-and-drop interface.

Prerequisites

This extension assumes that you're using one of the following on any model you want to be sortable.

ActiveRecord

acts_as_list

class Page < ActiveRecord::Base
  acts_as_list
end
Mongoid

mongoid_orderable

class Page < ActiveRecord::Base
  include Mongoid::Orderable
  orderable
end

Usage

Add it to your Gemfile

gem "activeadmin-orderable"

Include the JavaScript in active_admin.js.coffee

#= require activeadmin-orderable

Include the Stylesheet in active_admin.css.scss

@import "activeadmin-orderable"

Configure your ActiveAdmin Resource

ActiveAdmin.register Page do
  config.sort_order = 'position_asc' # assumes you are using 'position' for your acts_as_list column
  config.paginate   = false # optional; drag-and-drop across pages is not supported

  orderable # creates the controller action which handles the sorting

  index do
    orderable_handle_column # inserts a drag handle
    # use a user-defined URL for ordering
    orderable_handle_column url: :sort_admin_section_path
    # alternative form with lambda
    orderable_handle_column url: -> (resource) { compute_url_from_resource(resource) }
    # other columns...
  end

  show do |c|
    attributes_table do
      row :id
      row :name
    end

    panel 'Contents' do
      table_for c.collection_memberships do
        orderable_handle_column
        column :position
        column :collectable
      end
    end
  end
end

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

FAQs

Package last updated on 27 Jun 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc