ActiveAdminImport
Installation
Add this line to your application's Gemfile:
gem "active_admin_import" , '3.0.0'
or
gem "active_admin_import" , github: "activeadmin-plugins/active_admin_import"
And then execute:
$ bundle
active_admin_import features
- Replacements/Updates support
- Encoding handling
- CSV options
- Ability to describe/change CSV headers
- Bulk import (activerecord-import)
- Callbacks
- Zip files
- and more...
Basic usage
ActiveAdmin.register Post
active_admin_import options
end
Options
| Tool | Description |
|---|---|
| :back | resource action to redirect after processing |
| :csv_options | hash with column separator, row separator, etc |
| :validate | bool means perform validations or not |
| :batch_size | integer value of max record count inserted by 1 query/transaction |
| :batch_transaction | bool (false by default), if transaction is used when batch importing and works when :validate is set to true |
| :before_import | proc for before import action, hook called with importer object |
| :after_import | proc for after import action, hook called with importer object |
| :before_batch_import | proc for before each batch action, called with importer object |
| :after_batch_import | proc for after each batch action, called with importer object |
| :on_duplicate_key_update | an Array or Hash, tells activerecord-import to use MySQL's ON DUPLICATE KEY UPDATE or Postgres 9.5+ ON CONFLICT DO UPDATE ability. |
| :timestamps | bool, tells activerecord-import to not add timestamps (if false) even if record timestamps is disabled in ActiveRecord::Base |
| :ignore | bool, tells activerecord-import to use MySQL's INSERT IGNORE ability |
| :template | custom template rendering |
| :template_object | object passing to view |
| :resource_class | resource class name |
| :resource_label | resource label value |
| :plural_resource_label | pluralized resource label value (default config.plural_resource_label) |
| :error_limit | Limit the number of errors reported (default 5, set to nil for all) |
| :headers_rewrites | hash with key (csv header) - value (db column name) rows mapping |
| :if | Controls whether the 'Import' button is displayed. It supports a proc to be evaluated into a boolean value within the activeadmin render context. |
Wiki
Dependencies
| Tool | Description |
|---|---|
| rchardet | Character encoding auto-detection in Ruby. As smart as your browser. Open source. |
| activerecord-import | Powerful library for bulk inserting data using ActiveRecord. |
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