【发布时间】:2014-08-08 05:49:30
【问题描述】:
我第一次创建自定义助手。我的控制器代码中出现错误,我正在对不存在的对象(助手)调用 aa 方法。但我相信我的助手“BM”已成功加载,因为我在加载助手时没有收到任何错误。
Error: Call to a member function mcpGetActiveMerchantID() on a non-object
File: C:\wamp\www\bm\app\Controller\MCPController.php
Line: 412
我已将 BMHelper.php 放入我的 View\Helper\ 目录中。
<?php
class BMHelper extends AppHelper{
public function mcpGetActiveMerchant(){
return $this->Session->read('Auth.ActiveMerchant');
}
public function mcpGetActiveMerchantID() {
$activemerchant = $this->Session->read('Auth.ActiveMerchant');
foreach($activemerchant as $key => $value) {
$merchant_id = $key;
}
return $merchant_id;
}
}
?>
然后在我的控制器中我有这个:
<?php
class MCPController extends AppController {
public $helpers = array('Html', 'Form', 'Session','BM','Js' => array('Jquery'));
public function walkinadd() {
$test = $this->BM->mcpGetActiveMerchantID(); //Line 412
}
}
?>
这里又是错误(和我贴在顶部的错误一样)
Error: Call to a member function mcpGetActiveMerchantID() on a non-object
File: C:\wamp\www\bm\app\Controller\MCPController.php
Line: 412
有人知道怎么回事吗?
【问题讨论】: