Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails何时在控制器中使用当前用户_Ruby On Rails - Fatal编程技术网

Ruby on rails Rails何时在控制器中使用当前用户

Ruby on rails Rails何时在控制器中使用当前用户,ruby-on-rails,Ruby On Rails,我发现自己经常依赖于控制器中的当前用户助手方法。然而,我越是使用它,我就越觉得我不应该这么做。这是不是因为我的路线不像应该的那样宁静?我真的应该查找User.find(params[:User\u id])来查找我使用当前用户的任何请求(特别是在打开API的情况下) 您在使用当前用户方面可能和您一样正确。您不希望通过参数传递用户ID,并且出于安全原因依赖于此 在没有看到任何代码的情况下,我假设您理解MVC的程度应该是模型应该是胖的,控制器应该是瘦的。因此,经常在控制器中使用designe(我假设

我发现自己经常依赖于控制器中的
当前用户
助手方法。然而,我越是使用它,我就越觉得我不应该这么做。这是不是因为我的路线不像应该的那样宁静?我真的应该查找
User.find(params[:User\u id])
来查找我使用当前用户的任何请求(特别是在打开API的情况下)

您在使用当前用户方面可能和您一样正确。您不希望通过参数传递用户ID,并且出于安全原因依赖于此


在没有看到任何代码的情况下,我假设您理解MVC的程度应该是模型应该是胖的,控制器应该是瘦的。因此,经常在控制器中使用designe(我假设)来获取当前用户的信息是必要的。

您可能和您一样正确地使用
当前用户。您不希望通过参数传递用户ID,并且出于安全原因依赖于此


在没有看到任何代码的情况下,我假设您理解MVC的程度应该是模型应该是胖的,控制器应该是瘦的。因此,在控制器中经常使用designe(我假设)来获取当前用户的信息是必要的。

其余部分与路由有关,即路径和参数如何协同工作以确定哪个控制器操作处理请求等。这与
当前用户
无关
当前用户
正在查看您的会话(该会话最终使用客户端机器上的cookie)以查看当前登录的用户

如果网站用户希望对特定的用户记录(可能是他们自己的,但可能不是)进行处理,则可以使用
User.find(params[:User\u id])
。这与当前登录您站点的用户无关


编辑:你在最后提到了API。通常,如果API使用“当前用户”的概念进行任何操作,那么当前用户将是通过API的访问控制进行身份验证的人,无论访问控制是什么,类似于某人登录网站的概念,除了通常使用API时,您没有保持登录的概念:如果需要任何身份验证,每个API请求通常都会进行自身身份验证。

其余部分与路由有关,即路径和参数如何协同工作以确定哪个控制器操作处理请求等。这与当前用户无关
当前用户
正在查看您的会话(该会话最终使用客户端机器上的cookie)以查看当前登录的用户

如果网站用户希望对特定的用户记录(可能是他们自己的,但可能不是)进行处理,则可以使用
User.find(params[:User\u id])
。这与当前登录您站点的用户无关

编辑:你在最后提到了API。通常,如果API使用“当前用户”的概念进行任何操作,那么当前用户将是通过API的访问控制进行身份验证的人,无论访问控制是什么,类似于某人登录网站的概念,除了通常使用API时,您没有保持登录的概念:如果需要任何身份验证,每个API请求通常都会进行自身身份验证