0

我想用当前用户的employee_id 更新表Tasks 中的inspector_id。但是,模型不允许我访问 current_user。

这是我试图在任务模型中使用的代码。

before_update :update_inspector

protected
 def update_inspector
  self.inspector_id = current_user.employee
 end

我得到:

NameError (undefined local variable or method `current_user' 
4

2 回答 2

1

通常 current_user 在应用程序控制器中定义。这意味着该方法仅在控制器内部可用,而不是模型。您看到的错误与这种情况一致。如果您需要 Task 模型中的 current_user,您必须将它传递到某个地方。

于 2013-03-28T17:38:10.517 回答
0

您始终可以访问在模型内部构建 current_user 变量的会话信息。

于 2013-03-28T17:42:44.047 回答