问题描述
||
我在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