我有两个简单的表:Projects
和SubProjects
我想在每个子项目中打印一个表中的相应项目。
所以我写了这个:
class Admin_Model_Projects extends Zend_Db_Table_Abstract
{
protected $_name = 'main_projects';
protected $_primary = 'mai_id';
protected $_sequence = true;
protected $_dependentTables = array('Admin_Model_SubProjects');
....
而且:
class Admin_Model_SubProjects extends Zend_Db_Table_Abstract
{
protected $_name = 'sub_projects';
protected $_primary = 'sub_id';
protected $_sequence = true;
protected $_referenceMap = array(
'columns' => 'mai_id',
'refTableClass' => 'Admin_Model_Projects',
'refColumns' => 'mai_id'
);
.....
我想知道为什么在输入No reference from table Admin_Model_SubProjects to table Admin_Model_Projects
时我会<?php echo $entry->findParentRow('Admin_Model_Projects'); ?>
答案 0 :(得分:1)
您的referenceMap
定义中似乎缺少规则名称
它应该是
protected $_referenceMap = array(
'Project' => array(
'columns' => 'mai_id',
'refTableClass' => 'Admin_Model_Projects',
'refColumns' => 'mai_id'
)
);
答案 1 :(得分:0)
您应该在所有相关的表类中定义$_referenceMap
和$_dependentTables
。完成后,它会近似地反映出来。