【问题标题】:Application-wide global variable that can be get and set from controllers in Rails可以从 Rails 中的控制器获取和设置的应用程序范围的全局变量
【发布时间】:2015-06-03 01:39:34
【问题描述】:

我是一名新的 ruby​​-on-rails 开发人员,我一直在构建我需要的功能。

我在 Rails 网站上有一个产品提要。我想创建一个管理员控制台功能,管理员可以在其中更改产品提要对所有用户的行为模式。

我需要一个应用程序范围的变量,在服务器启动时初始化,但可以在选择控制器按钮时进行切换。

我尝试实现缓存解决方案、在 application.rb 中设置变量以及其他一些技术,但都没有成功。

寻找一些有关如何为 Rails 站点创建可写全局变量的见解!

谢谢

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    由于您的工作是无状态的,但您希望这个“全局”在您的 Rails 的所有服务器上持续存在,您需要去数据库进行持久性:

    class ProductFeed < ActiveRecord::Base
      validates_presence_of :toggle
    end
    
    class ApplicationController < ActionController::Base
      before_filter -> {
        @product_feed = ProductFeed.last
      }
    end
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多