答案 0 :(得分:1)
我认为你的问题是你不能像往常一样在sinatra存储全局变量。您需要在此设置中存储页面视图计数数据
set :my_config_property, 'hello world'
以下是有关它的文档http://www.sinatrarb.com/configuration.html 关于它的问题In Sinatra(Ruby), how should I create global variables which are assigned values only once in the application lifetime?
答案 1 :(得分:1)
仅将值存储在内存中是不够的,因为您的应用程序服务器可能正在使用不同的进程提供请求,并且每个进程都将具有类变量的不同副本。 即使重置服务器时该工作也会丢失计数器值。
我会使用像Redis这样的专业数据库。它可以非常快速,轻松地完成您想要的任务。你只需使用这样的东西:
require "redis"
redis = Redis.new
total_pageviews = redis.incr("page_counter")