我是Zend Framework的新手(我也是這個論壇的新成員:D),我發現這個棘手的問題是關於如果你想從3個相關的表中獲取。比方說,如果我有這些SQL查詢:從Zend Framework中獲取2個或更多相關表格的值
SELECT p.painting_id,p.painting_title ,p.painting_filename,a.artist_name,c.pc_name從繪畫P,藝術家 一個,painting_category c其中一個。 artist_id = p.artist_id AND c.pc_id = p.pc_id;
,我想這樣做太:
SELECT p.painting_id,p.painting_title ,p.painting_filename,a.artist_name,c.pc_name從繪畫P,藝術家 一個,painting_category c WHERE a.artist_id = p.artist_id AND c.pc_id = p.pc_id AND p.painting_id = $ p_id;
的情況下,首先,我要顯示所有畫作(與藝術家名稱和類別),然後,當用戶點擊畫,它會去到另一個網頁,只顯示繪畫(與藝術家名稱和類別)。
我已經在模型取得這一進展:
類Application_Model_DbTable_Painting擴展Zend_Db_Table_Abstract {
protected $_name = 'painting';
protected $_referenceMap = array(
'Artist' => array(
'columns' => array('artist_id'),
'refTableClass' => 'Artist',
'refColumns' => 'artist_id'
),
'PaintingCategory' =>array(
'columns' => array('pc_id'),
'refTableClass' => 'PaintingCategory',
'refColumns' => 'pc_id'
)
);
類Application_Model_DbTable_Artist擴展Zend_Db_Table_Abstract {
protected $_name = 'artist';
protected $_dependentTables = 'Model_DbTable_Painting';
} 小號
類Application_Model_DbTable_PaintingCategory擴展Zend_Db_Table_Abstract {
protected $_name = 'painting_category';
protected $_dependentTables = 'Model_DbTable_Painting';
}
我應該添加在模型中什麼樣的功能,我應該怎麼寫在控制器和視圖腳本得到結果,如SQL查詢我上面寫過?告訴我,如果我犯了錯誤。
我真的很感激,如果你會給我一些與我的問題有關的例子。感謝
嗨,謝謝!我設法在Zend Framework中直接編寫和執行SQL語句。我最大的錯誤是我忘了將$ this-> escape放到顯示當前繪畫的鏈接上(這導致參數傳遞失敗):))。 – psaka