0

这是我的问题。我正在使用 codeigniter,这是我的结构。我在 2 个文件中有 2 个类

class Model_setup extends CI_Model 
{
    //functions

    // an update function
    public function update()
    {
        // update stuff
    }
}

// OTHER FILE

class Tests extends Model_setup
{
    // other functions....

    // a totally different update function
    public function update()
    {
        // update a specific set of stuff
    }
}

我想知道是否以及如何引用这两个单独的更新函数。在与这两个不同的控制器中,说出您将Places_Controller如何区分这两个类方法之间的区别以及如何确保您只使用两个更新中的一个或另一个?提前感谢您的帮助。

4

2 回答 2

1

假设您正在加载两个模型,您只需按名称引用它们:

$this->Model_setup->update();

将参考第一种方法,而

$this->Tests->update();

将参考第二个。

于 2012-11-12T23:53:41.213 回答
1

所以我被一位朋友启发了如何解决这个问题。这不需要任何 codeigniter frmaework 东西才能正常工作。以下将正常工作:

class Model_setup extends CI_Model 
{
    //functions

    // an update function
    public function update()
    {
        // update stuff
    }
}

// OTHER FILE

class Tests extends Model_setup
{
    // other functions....

    // a reference function to the parent function
    public function parent_update($x)
    {
        // update a specific set of stuff
        parent::update($x);
    }

    // a totally different update function
    public function update()
    {
        // update stuff
    }
}

现在从外界来看,假设框架中的另一个控制器,一旦加载了所有内容,您就可以调用以下内容。$this->tests_model->parent_update($x)当您希望调用父版本以及$this->tests_model->update希望调用updateTests 模型的函数时。这行得通,我已经对此进行了测试。

于 2012-11-13T19:46:47.407 回答