我正在使用Rails 7.1.3.2
,刚刚安装了activerecord-session_store (2.1.0)
.
https://github.com/rails/activerecord-session_store
一切正常-我在控制器中设置的会话值保存到数据库中的会话记录中. 然而,我还想在数据库中的会话记录中设置一个account_id
字段,这样我就可以在我的测试脚本中获取帐户记录的最新会话记录.
我实际上如何设置它? 我无法弄清楚如何获取控制器中的会话模型记录.
文档(上面的链接)中写着"However, you must set session.model.id = session.session_id by hand! A before filter on ApplicationController is a good place."
但如果我在控制器中调用会话.模型,我会得到这个异常:
undefined method `model' for an instance of ActionDispatch::Request::Session
如果我调用session.id
,那么我会得到一个字母数字字符串,这是会话cookie的值,但它与数据库中存储在id
字段和session_id
字段中的值不同.
我实际上需要做的就是获取当前会话记录的database id,然后我就可以使用SQL查询更新account_id字段. 有人知道如何访问实际的模型记录吗?