我有TestController,hich没有自己的模型。我在里面使用各种模型,其中包括Trunk Model。我有我的函数“call”,想要使用Trunk Model中的方法“singlePckgCall”。直到这里一切顺利。
我正在尝试使用的这种方法使用另一种方法,位于下面 - “callSingleNumber”。
然后停止,并向我发送错误页面:
未知方法 - yii \ base \ UnknownMethodException
调用未知方法: 前端\控制器\ ::的TestController callSingleNumber()
我不知道为什么它想要从TestController调用一个方法,而不是在Trunk Model上调用,正如我想要的那样。结果,它没有看到这样的方法,因为它存在于另一个类中。我试图再次手动重写这个部分,但它没有帮助。
答案 0 :(得分:2)
您静态调用singlePckgCall
,因此singlePckgCall
方法$this
内部实例不可用。
要解决您的问题,您可以
1)在callSingleNumber
中静态拨打singlePckgCall
:
$action_id_array[$key] = self::callSingleNumber($numery[$i], TRUE);
第52行
2)创建一个Trunk类的实例,因此$ singlePckgCall
中提供了这个:
$instance = new Trunk();
$instance->singlePckgCall($numery);