2011-01-14 11 views
0

ORMに別の問題があります。Kohana3 ORM関係の明確化が必要

私は3つのモデルuser.php、tag.php、/user/tag.phpを持っています。

user.php

パス

tag.php

スラグ


ID
/user/tag.phpは、私が作成した
のuser_id

は、ユーザーとUSER_TAGモデルの間に多くの関係を持っていTAG_ID。だから私は、次のコードを使用して、ユーザーのタグを取得しています:

$user = ORM::factory('user', $user_id); 
$tags = $user->tags->find_all(); 

そしてここでは、私の質問ですが、それも自動的にタグ名を照会します(または私は(参加使うべき関係を構築する)、またはORMを残すことができるとこのためにクエリビルダーを利用します)?

答えて

0

必要なのはhas_many through relationshipです:

$protected $_has_many = array(
    'tags' => array(
     'model' => 'tag', 
     'through' => 'user_tag', 
    ), 
); 

ので、$user->tags->find_all()Model_Tagオブジェクトの配列を返します。

関連する問題