在Rails3中获取模型中的当前用户

时间:2012-09-11 22:56:47

标签: ruby-on-rails-3 activerecord activeadmin

我正在使用ActiveAdmin。我需要存储创建或更新每条记录的用户。

所以我将user_created_id和user_updated_id添加到每个模型中。 在before_save上,我想存储有关current_admin_user的信息。问题是我无法访问模型中的current_admin_user。

有没有办法在不破坏MVC的情况下做到这一点?

我发现了这个:http://rails-bestpractices.com/posts/47-fetch-current-user-in-models 但我不确定它是否安全。

任何帮助?

1 个答案:

答案 0 :(得分:0)

在保存之前在控制器中执行此操作(这是控制器存在的原因):

def create
  @my_model = MyModel.create params[:my_model]
  @my_model.user_created = current_user
  @my_model.save
end

update方法相同。