2012-01-09 2 views
0

Я новичок в zend framework, я пытаюсь понять, как работают отношения с таблицами. У меня две таблицы, и я пытаюсь связать их и получить их данные в списке.отношения в среде zend framework, 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'; 

В моих отношениях классе группы таблицы У меня есть:

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

Я не уверен, что мой $ _referenceMap и $ _dependentTables должен сказать, и если мне нужно указать их в обоих классах или только один?

Также как получить список из моей таблицы отношений с соответствующими данными relationship_group.

Любая помощь приветствуется.

ответ

2

Вот довольно хороший пример для отношений на столе.
Mat McCormisck on Table relationships in Zend Framework

Фактический ответ на ваш вопрос:

  • Это зависит от того, что вам нужно сделать, и как вы хотите, чтобы выполнить его.
+0

+1, Спасибо за очень интересное сообщение в блоге. Это очистило мои подозрения :) – Marecky

0

$_dependentTables не требуется в вашем случае (с использованием InnonDB).

Zend References

Примечание: Пропустите объявление $_dependentTables, если вы используете ограничения ссылочной на сервере СУРБД для реализации каскадных операций

Ваш $_referenceMap должен связать FOREIGN KEY в зависимой таблице в PRIMARY KEY в родительская таблица, и это требуется только в зависимой таблице.

Остальное как RockyFord предлагается в его ссылке :).

Смежные вопросы