模型内部的codeigniter模型和控制器内部的模型

时间:2012-04-22 22:28:05

标签: model-view-controller codeigniter view model controller

我实际上有3个问题,但彼此相似:

  • 我有一个名为Permissions的模型。我需要另一个模型,即。 Users。在Permissions内使用Users的正确方法是什么。
  • 你明白我的意思,是奇怪还是有另一种更好的方法。
  • 这个Permissions模型将在我的整个应用程序中全局使用,在其他模型或控制器中使用它的方式是什么(类似于第一个问题)

1 个答案:

答案 0 :(得分:4)

一种方法是获取主CodeIgniter对象的全局变量,然后从该对象加载模型而不是$ this:

class Permissions extends Model
{
    function MyPermissionsFunction()
    {
        $ci =& get_instance();
        $ci->load->model('users');

        $ci->users->MyUserFunction();
    }
}

您还可以通过将模型组合到一个更大的模型中来回避这个问题。将它们分开的主要原因是只加载您需要的模型;如果你几乎总是同时使用它们(对于用户和权限都是有道理的),你最好采用这种方法。