On Fri, Dec 5, 2008 at 5:09 PM, Petan C.
[email protected] wrote:
I’ve made a really simple page views counter.
@post = Post.find…
addcount = @post.views += 1
@post.update_attribute “views”, addcount
You don’t need the extra variable.
@post.update_attribute ‘views’, @post.views + 1
Its working fine, but if someone hold the F5 key, it keeps counting and
counting. Which is not a really good. Is there a way how to force the
counter to not keep counting while someone is holding the F5 key?
Store their IP address and a timestamp and then don’t count more views
from that same IP for a while.
For the IP address use request.env[ ‘HTTP_X_FORWARDED_FOR’ ] if your
Rails app is behind a proxy, or request.env[ ‘REMOTE_ADDR’ ] if it’s