0
我有一個表* sitepage_manageadmins *其中包含:「user_id,page_id」。 還有另一張表* sitepage_pages *其中包含「page_id,title」。ZendFramework - 如何獲得頁面ID名稱
我試圖在Zend_Form中作爲下拉列表(選擇列表)呈現管理員相關page_id的用戶。
這裏是我的代碼:
$this->view->owner_id = $viewer_id = $viewer->getIdentity(); // get $viewer
$adminpages = Engine_Api::_()->getDbtable('manageadmins', 'sitepage')->getManageAdminPages($viewer_id); // get viewer page_id's where is admin
獲取PAGE_ID的下拉列表:
$ids = array (0 => '-- Select --');
foreach ($adminpages as $adminpage) {
$ids[] = $adminpage->page_id;
}
呈現下拉
$this->addElement('select', 'page_id', array (
'label' => 'Page where I'm Admin',
'multioptions' => $ids,
));
現在,我只是渲染PAGE_ID數字作爲落下。我想從特定Page_ID來呈現標題。
歡迎任何想法? 感謝
對於我從數據庫的連接,我的表格沒有字段page_title,所以如果我以這種方式連接,我會得到錯誤。 我認爲的解決方案是加入sitepage_pages具有來自manageadmins查看器ID的頁面ID以及來自該ID的頁面標題。 – Seik
對不起。我以爲你已經加入了'getManageAdminPages()'。得到了來自兩個表混淆'page_id' –
'$選擇= $這 - >的select() \t - >從( 'sitepage_manageadmins') \t - > joinLeft(陣列( '頁'=> 'sitepage_pages' '),'page.page_id ='sitepage_manageadmins.page_id',array('page.page_id AS pageid','title AS page_title')) \t - > where('user_id =?',$ viewer_id); \t' –