kohana orm连接重复对象结果

kohana orm连接重复对象结果,orm,kohana-3,Orm,Kohana 3,我正在尝试使用下面的查询查询country表,以打印具有相应城市的所有国家。现在,我为每个城市获得一个复制的国家对象,而不是为所有城市获得一个国家对象 $all = ORM::factory('country')->select('cities.*')->join('cities','LEFT')->on('country.id', '=', 'country_id' )->find-all(); foreach ($all as $country) { ech

我正在尝试使用下面的查询查询country表,以打印具有相应城市的所有国家。现在,我为每个城市获得一个复制的国家对象,而不是为所有城市获得一个国家对象

$all = ORM::factory('country')->select('cities.*')->join('cities','LEFT')->on('country.id', '=', 'country_id' )->find-all();

foreach ($all as $country) {
    echo $caountry->name;
    foreach($country->cities as $city ){
        echo $city->name;
    }
}
谢谢你的帮助,
AA

如果您使用的是MySQL,并且只需要城市名称,那么可以使用函数,然后使用PHP的explode将其转换为数组

    $all = ORM::factory('country')
    ->select('country.name',DB::epxr('GROUP_CONCAT(cities.name) AS cities'))
    ->join('cities','LEFT')
    ->on('country.id', '=', 'country_id' )
    ->group_by("country.id")
    ->find-all();

foreach ($all as $country) {
    echo $country->name;
    foreach(explode(",",$country->cities) as $city ){
        echo $city;
    }
}