Laravel Nova - 范围关系字段

Laravel Nova - Scope Relationship Fields

有没有办法为 BelongsToMany 字段添加一个范围,这样当您附加相关模型时,您只能从受限的选项中这样做?

示例:

Post belongsToMany 标签(使用Spatie/Laravel-Tags)。 标签 belongsToMany Posts.

标签模型有 idnameslugtype 时间戳 属性。

在详细信息或更新视图中,我希望能够将标签附加到 Post。

使用 Post 资源上的默认 BelongsToMany 字段(或第三方包)允许我将标签添加到 Post。

App\Nova\Post.php

public function fields(Request $request)
{
            BelongsToMany::make('Tags'),
}

但是,我只想添加标签 where type = 'Books' 到这个模型。

如果您使用的是 Spatie 标签包,我建议您使用他们的 Nova Tags package。然后您可以将以下内容添加到您的字段定义中:

Tags::make('Tags')->type('books'),

这会将该资源的可用标签限制为 books 类型的标签。请参阅 Nova Tags package and the base Spatie Tags package

上的条目