Kohana 3.1 ORM关系问题

时间:2011-06-08 13:57:04

标签: orm kohana kohana-3 kohana-orm

我正在使用kohana3。

表: 用户ID用户名friend_id

user_relationships id user_id friend_id

我正在尝试执行以下操作:

我们假设,我在user_table中有id = 1。然后我想为这个用户获取friend_id数组。假设它是(2,3)。然后我想获得id =(2,3)

的用户名

用户模型:

protected $_has_many = array(
    'userrelations' => array()
);

userrelationships模型:

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

控制器:

$user = ORM::factory('user', 1);
$friends = $user->userrelations->find_all();

我只回复[“id”] => string(1)“1”[“user_id”] => string(1)“1”[“friend_id”] => string(1)“2” 我该怎么写才能得到我想要的东西?

2 个答案:

答案 0 :(得分:0)

尝试使用as_array

$user->userrelations->find_all()->as_array('col1', 'col2');

答案 1 :(得分:0)

所以,它应该是这样的:

用户模型中的

'friends' => array('model' => 'user', 'through' => 'user_relationships')

我得到所有需要的数据:

 $friends = $user->friends->find_all();

其中'friends'是我在用户模型中使用的别名