我有两张桌子。我不仅希望返回父数据“Lists”,还包括与“ListTypes”的关系。我怎么能这样做?
$ d = self :: find(); //工作 - 但缺少关系,看到预期的结果。
表格
具有以下代码关系。
// Models/Lists.php
<?php
use Phalcon\Mvc\Model;
class Lists extends Model {
public function initialize() {
$this->hasOne('type_id', 'ListTypes', 'id');
}
public function getData() {
$d = self::find();
}
}
?>
// Models/ListTypes.php
<?php
use Phalcon\Mvc\Model;
class ListTypes extends Model {
public function initialize() {
$this->belongsTo('id', 'Lists', 'type_id');
}
}
?>
当前结果:
Array
(
[0] => Array
(
[id] => 1
[name] => Airbus
[type_id] => 1
)
[1] => Array
(
[id] => 2
[name] => BMW
[type_id] => 2
)
)
预期结果 - 我想要
Array
(
[0] => Array
(
[id] => 1
[name] => Airbus
[type_id] => 1
[type_name] => Airplane
)
[1] => Array
(
[id] => 2
[name] => BMW
[type_id] => 2
[type_name] => Car
)
)
答案 0 :(得分:1)
只要在每个父模型中为子关系设置别名,就可以使用递归函数来获取相关模型。 PHP / Phalcon - Automatically nesting objects