Laravel 4 hasMany with WHERE子句

问题描述 投票:6回答:3

不知道这是否是将附加查询添加到hasMany参数的正确方法,但未成功。这可能吗?

public function menuItems($parent=false){
    if($parent){
        $menuItems = $this->hasMany('MenuItem')->where('parent',$parent);
    }else{
        $menuItems = $this->hasMany('MenuItem');
    }
    return $menuItems;
}

使用时调用

$menu_items = $menu->menuItems(0);

这似乎在传递父对象时似乎返回一个空数组。即使存在MenuItem-> parent = 0的数据

我需要以某种方式区分我要的是链接项“父”而不是主要模型“父”)>

不知道这是否是将附加查询添加到hasMany参数的正确方法,但未成功。这可能吗?公共功能menuItems($ parent = false){if($ parent){$ ...

laravel laravel-4
3个回答
13
投票
public function menuItems(){
        return $this->hasMany('MenuItem');
}

1
投票

我不确定查询部分,但起初不会将0传递给函数仍将$ parent变量注册为false吗?因此,也许只是检查$ parent是否不为空。


-1
投票

在PHP 0 = FALSE中,更改此

© www.soinside.com 2019 - 2024. All rights reserved.