首页 > 解决方案 > 如何从外部将参数传递给资源

问题描述

我正在使用 Laravel Nova,但我遇到了问题!我需要在 Items Resource 中执行一些特定的验证,并且我需要知道它的 Category id。Items 资源嵌套在 Category 资源中。我通过 HasMany 字段获取项目,如下所示:

public function fields(Request $request)
    {
        return [

            new Panel('Items', [
                HasMany::make('Items', 'items')
            ]),
        ];
    }

这实际上是类别资源。

我如何知道 Items 资源中的 Category id?

有任何想法吗?

标签: laravellaravel-nova

解决方案


如果您的关系设置为一对多(一个类别有多个项目),您应该category_id在该模型上将可用字段作为字段;BelongsTo他们的模型应该与类别有关系。

在您的“项目”Nova 资源中定义一个BelongsTo字段来访问该关系,或者category_id如果需要,直接使用模型的属性。


推荐阅读