如何从Kohana 2.x中的连接表中获取列

时间:2012-04-19 06:34:36

标签: php kohana kohana-orm

我正在使用kohana 2.x作为我的项目,我已经关注了查询

 $result = ORM::factory('table1')
                        ->join('table2','table1.id','table2.id')
                        ->find_all();

使用上面的查询我可以从table1获取数据,但我也需要从table2获取数据。当我这样给出时

$result->table2_column_name;

它显示错误,我如何从table2中获取数据。

1 个答案:

答案 0 :(得分:2)

您的陈述既不是ORM也不是Active Record。如果你有一个扩展Table1_Model类的ORM类,那么你可以使用ORM::factory('table1');你也需要table2几乎相同的东西。每个班级都应该宣布关系。 Getting Started with ORM

结果模型将是,

class Table1_Model extends ORM {
    protected $has_one = array('table2');
}

class Table2_Model extends ORM {
    protected $has_one = array('table1');
}

现在你可以这样查询,

$result = ORM::factory('table1', 1);
echo $result->table1_column_name;
echo $result->table2->table2_column_name;