未定义属性错误


Cakephp undefined property error

我有一个cakephp控制器的问题,我一直得到错误

未定义属性:AdsController::$getUrlsHTML

               public function getUrlsHTML($UrlId = 0) {
    // Called via AJAX to get HTML for CTAs
    // Provides insertable HTML based on list from getCalloutsActionsList()
    $this->layout = 'ajax';
    $UrlsList = $this->getUrlsActionsList($UrlId);
    $this->set('Urls', $UrlsList);
    $this->set('url', $UrlId);
    $this->render('/elements/ads/url');
}
private function getUrlsActionsList($UrlId = 0) {
    // Pulls appropriate Callouts list. Usually called by getCalloutsHTML()
    $Urls = $this->getUrlsHTML->getUrls();
    $UrlsList = array();
    foreach ($Urls as $Url) {
        $UrlsList[$Url['url']['id']] = $Url['url']['text']; 
    }
    return $UrlsList ;
}

This

$this->getUrlsHTML->getUrls();

无效。你想干什么?

错误确切地说你的问题是什么,getUrlsHTML不是一个属性,意思是"为什么你把它当作一个变量?"

$this->getUrlsHTML()

调用函数,或者

$this->getUrlsHTML()->getUrls();

属性"getUrlsHTML"声明在你的控制器?我只能看到函数getUrlsHTML,所以你必须使用$this->getUrlsHTML()来调用它。