2012-01-09 79 views
0

我是新来的zend框架,我想了解表关系如何工作。我有两个表,我试图链接他们,并获得他们的数据在列表中。zend框架表关系,referenceMap&dependentTables

CREATE TABLE `relationship` (
    `relationship_id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
    `relationship_name` varchar(45) NOT NULL, 
    `relationship_group_id` int(10) unsigned NOT NULL, 
    `display` int(10) unsigned NOT NULL DEFAULT '1', 
    PRIMARY KEY (`relationship_id`), 
    KEY `FK_relationship_1` (`relationship_group_id`), 
    CONSTRAINT `FK_relationship_1` FOREIGN KEY (`relationship_group_id`) REFERENCES  `relationship_group` (`relationship_group_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

CREATE TABLE `relationship_group` (
    `relationship_group_id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
    `relationship_group_name` varchar(45) NOT NULL, 
    `display` int(10) unsigned NOT NULL DEFAULT '1', 
    PRIMARY KEY (`relationship_group_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

在我的关系表类,我有:

class Relationship_Table extends Zend_Db_Table_Abstract 
{ 
    protected $_rowClass = 'Relationship'; 
    protected $_name = 'relationship'; 

在我的关系组表I类有:

class Relationship_Group_Table extends Zend_Db_Table_Abstract 
{ 
protected $_name = 'relationship_group'; 
protected $_rowClass = ' Relationship_Group'; 

我不知道我的$ _referenceMap和$ _dependentTables应该说,如果我需要在两个班级或只有一个班级中说明他们?

另外我如何从包含相应的relationship_group数据的关系表中获取一个列表。

任何帮助表示赞赏。

回答

0

$_dependentTables不需要你的情况(使用InnonDB)。

Zend References

注:如果您使用参照完整性约束在RDBMS服务器来实现级联操作

跳过的$_dependentTables声明你$_referenceMap应在从属表链接FOREIGN KEYPRIMARY KEY在父表,它只在从属表中需要。

其余的就像RockyFord在他的链接中建议:)。