Laravel Nova,仅显示创建资源页面上菜单中的活动记录

时间:2019-06-23 06:48:27

标签: laravel laravel-nova

在Laravel(Nova),我有两个资源Motor和Brand。

现在,在创建新的Motor时,我从菜单(BelongsTo)中选择一个Brand。效果很好。

Nova > Motor

BelongsTo::make('Select a Brand', 'brand', 'App\Nova\Brand'),

我如何做到这一点,所以菜单中仅列出了有效的品牌?

我尝试将其添加到我的品牌模型中:

class Brand extends Model
{
    public static function relatableMotors(NovaRequest $request, $query)
    {
        return $query->where('active', 1);
    }
}

没有错误,但是在创建新的Motor时,我仍在相关菜单中同时显示有效和无效的品牌。

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:0)

找到了我认为的解决方案。

将此添加到Nova> Resource.php:

public static function relatableBrands(NovaRequest $request, $query)
    {
        return $query->where('active', 1);
    }