`TheModerator::Model` is not included in every `ActiveRecord` model so it has to be included in association models if it is not when moderating associations.
TheModerator
Moderate fields before their insertion in the database by serializing and saving them into a separate 'moderations' table.
Installation
Add this line to your application's Gemfile:
gem 'the_moderator'
And then execute:
$ bundle
Or install it yourself as:
$ gem install the_moderator
Then use the generator for the migration and the basic Moderation
model:
$ rails generate the_moderator:install
Usage
To use TheModerator
, you need to include TheModerator::Model
in the models you want to moderate.
class Article
include TheModerator::Model
end
The Moderation
model added by the genenrator is used to access the moderations.
Moderate attributes
This gem adds 3 methods to your models.
moderate
moderated?
moderated_fields_for(assoc)
Manage moderations
To list pending moderations, you can use the Moderation
model
Moderation.all
You can access the moderations for a specific object with
post = Post.last
post.moderations
A Moderation
instance has 4 methods:
moderation.data
returns a hash of the moderated attributesmoderation.data_display
returns a user-friendly hash to display the moderated attributesmoderation.preview
moderation.accept
modifies the moderated object with the specified attributes and saves itmoderation.discard
destroys the moderation
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
License
TheModerator is released under AGPLv3 license. Copyright (c) 2013 La Fourmi Immo
Description
Languages
Ruby
100%