Как установить мульти связь hasMany между моделью? - PullRequest
0 голосов
/ 28 января 2010

Я использую Doctrine-Project

и у меня есть 3 таблицы

table 1: post
--------------
postid , title , date , some more fields....


table 2: tags
---------------
tagid , title


table3: post_tags 
--------------------
post_tags_id , tagid , postid

Таблица 3 является ссылкой между тегами и сообщениями, которые означают каждый пост получает теги через post_tags

сейчас в базовой почтовой модели у меня есть:

     $this->hasMany('PostTags as TagLink', array(
            'refClass' => 'PostTags',
            'local' => 'postid',
            'foreign' => 'postid'
        )

    );

, которая связывает модель с моделью PostsTags

и в модели PostsTags у меня есть assc "принадлежит" модели Post и модели Tag

Теперь я выполняю запрос:

$q = Doctrine::getTable('posts')->findAll();

Теперь, если я хочу получить теги, я делаю $q->PostsTags->Tags

но я не особо беспокоюсь о PostsTags, потому что его единственная ссылка

так что я хочу сделать просто

$q->Tags

и получение тега для поста

как я могу это сделать?

...