An open API service indexing awesome lists of open source software.

https://github.com/dapi/archivable

gem 'dapi-archivable'. Archivable concern for ActiveRecords
https://github.com/dapi/archivable

gem ruby ruby-gem

Last synced: 5 months ago
JSON representation

gem 'dapi-archivable'. Archivable concern for ActiveRecords

Awesome Lists containing this project

README

          

# Archivable

[![Build Status](https://travis-ci.org/BrandyMint/archivable.svg)](https://travis-ci.org/search/archivable)

Add common methods to archive models.

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'dapi-archivable'
```

And then execute:

$ bundle

Or install it yourself as:

$ gem install dapi-archivable

## Usage

```
class MyRecord < ApplicationRecord
include Archivable
```

Create and run migration:

```
> rails g migration AddArchivedAtToMyRecords archived_at:timestamp
```

Add to routes:

```
concern :archivable do
member do
delete :archive
post :restore
end
end
```

And use like a boss:

```
resources :clients do
concerns :archivable
end
```

## Development

After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/dapi/archivable. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.

## License

The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).

## Code of Conduct

Everyone interacting in the Archivable project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/dapi/archivable/blob/master/CODE_OF_CONDUCT.md).

## Other gems

* https://github.com/johno/archivable