我有一个简单的观察者,它正在观察某些模型,并将模型to_json
与模型名称一起写入表中。我还想跟踪执行更改的人员,但我无法弄清楚如何访问当前用户。
也许有一个简单的宝石或一些代码我可以放在ApplicationController或类似的东西可以帮助?
答案 0 :(得分:1)
我无法想到这样做的干净方法。您可以尝试使用User.current模式,但我不是该方法的粉丝,我不确定它是否会正确地与观察者沟通。
在这些我想知道谁(最后)更改了对象的情况下,我通常会将“changed_by”和“changed_at”类型的属性添加到模型本身,并在控制器中设置它们。这样就可以更容易地留下审计线索。如果您实际上不想将值存储在数据库中,甚至可以使用attr_accessor。