我正在尝试从这个左右树的给定节点返回直接子节点:
这是我在模型中的代码:
public function scopeHijos($query, $categoria_id){
$categoria = Categoria::find($categoria_id);
echo $izq = $categoria->izquierda;
echo $der = $categoria->derecha;
$izq++;
echo $izq;
if ($izq<$der) {
do {
$hijo = Categoria::where('izquierda', $izq)
->take(1)
->get();
foreach ($hijo as $hijo) {
//$hijos->push($hijo);
$i = ($hijo->derecha)+1;
}
$izq=$i;
} while ( $izq<$der);
}
//return $hijos;
}
}
问题在于$ hijos-&gt; push($ hijo)。我找不到一种方法将查询结果推送到$ hijos var以便返回它。怎么办呢?
非常感谢。
答案 0 :(得分:0)
哟你没问题。 pero no se eso arreglar la problema tienes pero intenta eso
Tienes
foreach ($hijo as $hijo)
坎比奥
foreach ($hijos as $hijo) // CON S
la variable $ hijos es definida en la scope local。 Cuando函数试图返回$ hijos它不知道$ hijos是什么因为未在函数范围内定义。
答案 1 :(得分:0)
有一个非常简单的答案:在表格中添加“父”字段并在类别模型中创建自我关系。