如何从外部将参数传递给资源

问题描述

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

public function fields(Request $request)
    {
        return [

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

这实际上是类别资源。

我如何知道Items资源中的类别ID?

有什么想法吗?

解决方法

如果您的关系设置为一对多(一个类别有很多项目),则应该在该模型上将category_id作为字段使用;并且它们的模型应该与“类别”具有BelongsTo关系。

在“物品” Nova资源中,定义一个BelongsTo字段以访问该关系,或者在需要时直接使用模型的category_id属性。