has_ratings
demonstrates a reference implementation for handling ratings.
API
Bugs
Development
Testing
Source
-
git://github.com/pluginaweek/has_ratings.git
Mailing List
Storing ratings is a pretty common task when building web applications with a community-based focus. Ratings can have names and values associated with them. This plugin demonstrate a simple way to manage what ratings can be used and how they are persisted.
Note that this is a reference implementation and, most likely, should be modified for your own usage.
has_ratings
requires additional database tables to work. You can generate a migration for these tables like so:
script/generate has_ratings
Then simply migrate your database:
rake db:migrate
user = User.find(1) video = Video.find(1) video.ratings.create(:rater => user, :value => 'poor') video.ratings.average # => 1.0
Included with the plugin are image/stylesheet assets for creating raters using css as described at www.komodomedia.com/blog/2007/01/css-star-rating-redux
Before you can run any tests, the following gem must be installed:
To run against a specific version of Rails:
rake test RAILS_FRAMEWORK_ROOT=/path/to/rails
-
Rails 2.3 or later
-
enumerate_by 0.4.0 or later