我有一个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()来调用它。