Kohana3 ORM 需要澄清关系
Posted
技术标签:
【中文标题】Kohana3 ORM 需要澄清关系【英文标题】:Kohana3 ORM Relationship Clarification needed 【发布时间】:2011-01-14 10:56:24 【问题描述】:ORM 还有一个问题。
我有三个模型:user.php、tag.php 和 /user/tag.php。
user.php 名称 通过
tag.php 名称 蛞蝓
/user/tag.php 身份证 tag_id user_id
我创建的 user 和 user_tag 模型之间有很多关系。所以我使用以下代码获取用户标签:
$user = ORM::factory('user', $user_id);
$tags = $user->tags->find_all();
这是我的问题,是否可以建立自动查询标签名称的关系(或者我应该使用 join() 还是离开 ORM 并为此使用查询构建器)?
【问题讨论】:
【参考方案1】:您只需要has_many through relationship:
$protected $_has_many = array(
'tags' => array(
'model' => 'tag',
'through' => 'user_tag',
),
);
所以,$user->tags->find_all()
将返回一个由Model_Tag
对象组成的数组。
【讨论】:
以上是关于Kohana3 ORM 需要澄清关系的主要内容,如果未能解决你的问题,请参考以下文章
Kohana 3 ORM:如何使用 2 个多对多关系执行查询