- Add CSV import with one line of code
- Parses the file client-side and imports line-by-line to avoid Heroku timeouts
- Validates the CSV has the correct column names before importing.
Inspired by https://github.com/krhorst/active_admin_importable and makes use of Recline.js. This is a relatively heavy solution with a lot of JS dependencies, but should be easier for large imports on Heroku than first uploading to a file server.
Add this line to your application's Gemfile:
gem 'active_admin_csv_import'
And then execute:
$ bundle
Add 'csv_importable' into your active admin resource:
ActiveAdmin.register Thing do
csv_importable
end
An import button should appear on the resource's index page. All columns are expected other than id, updated_at and created_at.
http://active-admin-csv-import.herokuapp.com/admin
admin@example.com
password
Source: https://github.com/Papercloud/active-admin-csv-import-example
- Specify which columns to expect in the CSV.
- Specify a unique column which can be used to update a record rather than attempt to create a duplicate.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request