我希望在整个会话中都使用@report_for

问题描述

|| 我在application_controller中创建了一个名为\“ report4 \”的方法,该方法用于设置\“ @ report_for \”变量 在另一个控制器中,使用视图的before_filter调用\“ report4 \” 在视图中,它显示为标题的一部分 我以为当数据发送回控制器进行更新时它仍然会存在,但是\“ @ report_for \”几乎为零。 是否可以并且应该为整个会话(例如“ current_user \”)设置像\“ @ report_for \”这样的变量? 如果不是,将其发送回隐藏字段的最佳方法是吗? 谢谢。     

解决方法

        您可以只使用会话哈希(ActionDispatch :: Session :: AbstractStore :: SessionHash):
session[:report_for] = \'whatever\'
if session[:report_for].present?
  #do your thing
else
  #carry on
end
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...