Many times, we need to track the page views of any page such as
profile page, shopping sites page in a Ruby on Rails applications, for
which we can make use of Impressionist gem to track those page details
easily.
It is a lightweight plugin that logs impressions per action or
manually per model. We can log impressions multiple times per request.
And we can also attach it to a model.
Below are the simple steps needed to follow to implement it:
Step 1: Create a sample app using scaffold.
Step 2: Add “gem ‘impressionist’” gem to the Gemfile and install it by running bundle install command.
- gem ‘impressionist’, git: ‘https://github.com/jordanhudgens/impressionist’
Step 3: Nowgenerate the impressions table migration by running the below commands:
- rails g impressionist
- rake db:migrate
Step 4: Now we need to update our controller that
we want to add the impression or page views counting system. So first we
have add the following method in our controller with mentioning the
list of actions that we want to count:
And then update the controller action with the impressionist method:
Step 5: We need to add the new counter cache column to the model that we are working with. Run the following command:
- rails g migration add_impressions_count_to_blogs impressions_count:integer
- rails db:migrate
Now we can update the model for tracking the hits:
Step 6: Now we can display how many views this Blog has.
Great Post! you have done great job.Thanks for sharing it with us. Well done and keep posting Ruby on Rails Application Development.
ReplyDeleteThank you.Well it was nice post and very helpful information on Ruby on Rails Online Training
ReplyDelete