gpt4 book ai didi

CodeIgniter 模型/ Controller 和用户 ID

转载 作者:行者123 更新时间:2023-12-05 00:07:45 25 4
gpt4 key购买 nike

我在 CodeIgniter 中的模型需要检查用户是否有权执行给定的操作。在我使用 $this->session->userdata['user_id'] 引用的模型中。

我的问题是 - 我应该在 Controller 中将变量设置为 $this->session->userdata['user_id'] 并将其传递给模型,还是只是在模型中检查它?

它甚至重要吗?我想将 $user_id 传递给函数会使它(稍微)更具可读性。支持/反对的论点和建议是什么?

最佳答案

您可以在应用程序的基础数据和给定模型成员函数附带的数据之间进行选择。应该保证你在任何地方使用的东西(基本成员、全局变量等),并且只在当前函数中使用的东西应该是参数。您会发现在模型和 View 中的许多地方使用隐含变量(如 $this->session->userdata )将很快变成意大利面条,并且如果您没有正确引导它们将是不可预测的。

在我的 CodeIgniter 项目中,我添加了一个从 CI 框架继承的自定义基础模型和 Controller ,添加了他们自己的成员数据,这些数据在应用程序的任何地方都可以使用。我使用这些基类来提供我所有模型和 Controller 使用的数据和函数(包括诸如 userID 之类的东西)。在 my_base_controller 的构造函数中,我调用 CI 基础构造函数,并设置所有 Controller 和 View 所需的数据。这保证了类数据的可预测默认值。

关于CodeIgniter 模型/ Controller 和用户 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1782356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com