2011-01-23 1 views
0

довольно простой вопрос, я думаю, что я не мог найти ответ в документации (http://kohanaframework.org/guide/orm/relationships)Как связать несколько отношений ORM в Кохане 3?

У меня есть необходимость определить отношения с несколькими Модели (выделены жирным шрифтом) (каждый из них имеет соответствующую таблицу) в один раз, если это имеет смысл.

У меня есть несколько моделей, которые имеют слегка переплетенные отношения.

соединение модель $_belongs_toпользователя. Этот код работает отлично, отлично. Но связь также должна быть $_has_oneпесня (i can haz cheezeburger ??), и до $has_oneключевое слово, если это имеет смысл.

Это потому, что я хочу для получения доступа к песне имени и ключевого слова имени через соединение, например, с помощью $connection->song->name, а затем $ connection->keyword->name ...

SO, проблема, я не могу похоже, связывают отношения, описанные выше, поскольку я могу только объявить одну связь на модель ... так как мне это сделать? Или, может быть, есть еще один гораздо более простой способ сделать это, о котором я не знаю ...

Предполагаю, что я являюсь n00b и хотел бы помочь в этом. Приветствия.

ответ

1

Вы можете собрать отношения в массивах:

class Model_Connection extends ORM { 

    protected $_belongs_to = array(
     'user' => array(), 
    ); 

    protected $_has_one = array(
     'song' => array(), 
     'keyword' => array(), 
    ); 

} 

PS. Но похоже, что и song, и keyword должны быть в $_belongs_to (один song имеет много connections, один connection относится к song).

+0

спасибо, хотя для других ссылки, вы должны использовать правильные обозначения, включая пустой массив после, так \t защищаемого $ _belongs_to = массив ( \t \t 'пользователя' => Array(), \t); –

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

  • Нет связанных вопросов^_^