【发布时间】:2012-09-24 04:46:07
【问题描述】:
我有三个表,incidents、incident_properties 和 property_types。
我想做的是:
- 在
incidents表中查询一行 - 检索其所有属性(键值行和 type_id)
- 对于每个属性,从
property_type表中检索其类型
所以我建立了这个表关系-
class Incidents extends Zend_Db_Table_Abstract
{
protected $_name = 'incidents';
protected $_dependentTables = 'Properties';
}
class IncidentProperties extends Zend_Db_Table_Abstract
{
protected $_name = 'incident_properties';
protected $_dependentTables = 'PropertyTypes';
protected $_referenceMap = array(
'Incidents' => array(
'refTableClass' => 'Incidents',
'refColumns' => 'incident_id'
)
);
}
class PropertyTypes extends Zend_Db_Table_Abstract
{
protected $_name = 'incident_property_types';
protected $_referenceMap = array(
'Properties' => array(
'refTableClass' => 'IncidentProperties',
'refColumns' => 'property_type_id'
)
);
}
在我的incidents 模型映射器中,我想做类似的事情:
$select = $this->_dbTable->select()->where('id = ?',$incident->get_id());
$incident_properties = $this->_dbTable
->fetchRow($select)
->findDependentRows('IncidentsProperties')
->toArray();
print_r($incident_properties);
并在$incident_properties 中检索其类型行中的属性键、值和类型。
任何想法如何以正确的方式完成此任务?
【问题讨论】:
标签: php zend-framework zend-db zend-db-table