gpt4 book ai didi

ruby-on-rails - 所有 Controller 操作的 Rails 变量

转载 作者:数据小太阳 更新时间:2023-10-29 06:27:25 24 4
gpt4 key购买 nike

这应该是一道很简单的rails题。我有一个如下所示的变量。

@administration = Administration.first

我希望这个变量可以通过我所有 Controller 的每个 Controller 操作访问,所以例如,如果我有一个产品 Controller 并且在它里面我有通常的 CRUD 操作,我想要上面定义的 @administration 变量被放置进入所有 CRUD 操作。 (销毁、创建或更新不需要它)。我的项目中有很多 Controller ,我想知道是否有比通过我想要的所有操作手动添加它更简单的方法。

我尝试了一个全局变量

 $administration = Administration.first

但是我遇到了一个问题,当我更新 Administration.first 表的实际内容时它没有更新。另外,我想避免使用全局变量。

任何帮助将不胜感激。谢谢! :)

最佳答案

您可以在 ApplicationController 中添加一个 before_filter,在调用任何操作之前设置管理变量,并且您可以将其限制为仅执行您需要的操作。

class ApplicationController < ActionController::Base
...
before_filter :set_admin
def set_admin
@administration = Administration.first
end
..

http://api.rubyonrails.org/v2.3.8/classes/ActionController/Filters/ClassMethods.html

关于ruby-on-rails - 所有 Controller 操作的 Rails 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2979327/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com