我希望人们在不必登录的情况下对事情进行“投票”。我想这样做的方式是通过cookie。
根据帖子跟踪这些Cookie的推荐方法是什么?
例如,用户查看帖子,然后“投票”。现在,投票后的投票存储在一个cookie中,当该用户访问该页面时,它会说他们投了赞成票。
我应该为每个帖子创建一个cookie,还是一个cookie,它是他们投票的所有帖子的哈希值?
提示/代码示例将不胜感激。谢谢。
答案 0 :(得分:0)
您可以通过cookies[:cookie_name]
访问Cookie。更多详情:http://api.rubyonrails.org/classes/ActionDispatch/Cookies.html
答案 1 :(得分:0)
我认为你正朝着正确的方向前进,为这种类型制作的cookie仅需要存储搜索历史等不敏感信息。请记住不要给cookie任何到期时间,它将保留在用户浏览器中,并且大多数普通用户不会清除cookie,因此对您来说不会有问题。
你可以这样使用它cookies[:voted] = true
在你注册投票时这样做,每次投票前都要检查这个
if cookies[:voted]
return # or show that you have already voted
如果您还想保存他们上次结算的投票,您可以将其保存在Cookie中以便下次检索。