我有2个型号。 Users
和Ips
。 Users
关系:
return array(
'ips' => [self::HAS_MANY, 'Ips', ['user_id' => 'id']]
);
Ips模型包含字段id, user_id, ip
。
我需要使用其唯一的Users
获取所有Ips
。
$users = $model->with(['ips' => [
'select' => 'ip',
'distinct' => true
]])->findAll();
不按我需要的方式工作。可能它在字段id
中变得独一无二。
感谢您的回复!
答案 0 :(得分:0)
尝试定义你的关系:
return array(
'ips' => [self::HAS_MANY, 'Ips', 'user_id']
);
答案 1 :(得分:0)
您可能想尝试GROUP BY
$users = User::model()->with(array(
'ips'=>array(
'group'=>'user_id, ip',
)
))->findAll();
希望有所帮助