我有一个 Rails 应用程序,我在其中使用一些全局变量根据日期在页面上显示一些结果。日期范围变量是全局变量。现在的问题是,当不止一个人同时访问应用程序时,全局变量是共享的,并且对于应用程序的每个实例不是唯一的。
有人可以指出我为应用程序的每个实例处理变量的好方向吗?
我有一个 Rails 应用程序,我在其中使用一些全局变量根据日期在页面上显示一些结果。日期范围变量是全局变量。现在的问题是,当不止一个人同时访问应用程序时,全局变量是共享的,并且对于应用程序的每个实例不是唯一的。
有人可以指出我为应用程序的每个实例处理变量的好方向吗?
您应该使用实例变量,而不是全局变量(实际上永远不应该使用)。在这里,它们被设置为在日期范围内查找订单
class OrdersController < ActionController::Base
def index
@start_date = params[:start_date] || 30.days.ago
@end_date = params[:end_date] || 30.days.ago
@orders = Order.where("start_date >= ?", @start_date).where("end_date <= ?", @end_date)
end
end
注意:实际上,您在网上找到的每个示例都将使用上述样式,并且不会使用 ruby 全局变量。