Active Admin Sortable
This gem extends ActiveAdmin so that your index page's table rows can be sortable 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
class Page < ActiveRecord::Base
acts_as_list
end
Mongoid
class Page < ActiveRecord::Base
include Mongoid::Orderable
orderable
end
Usage
Add it to your Gemfile
gem 'activeadmin-sortable'
Include the JavaScript in active_admin.js
//= require activeadmin-sortable
Include the Stylesheet in active_admin.css
//= require activeadmin-sortable
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
sortable # creates the controller action which handles the sorting
index do
sortable_handle_column # inserts a drag handle
# other columns...
end
end
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request