Вот мое решение, если кому-то интересно. Спасибо за вашу помощь, ребята.
#Views
<%= link_to post.rating, increase_post_path(post) %>
#Controller
def increase
@post = Post.find(params[:id]).increment!(:rating)
flash[:notice] = "Thanks for rating"
redirect_to posts_url
end
#Routes
map.resources :posts, :member => { :increase => :put }
Это работает, если вы хотите что-то только для себя, то, что не будет злоупотреблять. Очевидно, что добавление рейтинга на ваши сайты, где другие могут голосовать неограниченное количество раз, просто напрашивается на неприятности.
Я предлагаю использовать Votefu , делает рейтинги и даже имеет пользовательскую карму. Автор был достаточно хорош, чтобы сделать пример приложения .