Nova:从模型关系中创建选择选项

时间:2020-10-13 22:20:46

标签: laravel laravel-nova

我有一个productsteamscategories表。我正在尝试将Team分配给Product。将Team分配给该Product时,他们会为该Category获得一个或多个Product

问题是,在将类别分配给categories时,我不想从主Team表中提取。我想从Category上的关系中填充可用的Product选项。

目前Product模型如下:

class Product extends Model
{
  public function teams()
  {
    return $this->belongsToMany(Team::class)->withPivot(['write', 'category_id']);
  }

  public function categories()
  {
     return $this->plan_type->categories();
  }
}

categories关系引用了另一个模型,该模型使产品可以使用任意数量的类别。例如:我们有100个可用类别,但是基于分配给此PlanType的{​​{1}},可能只有5个Product可用,因此仅返回那些类别。

在Laravel Nova中,我试图创建一个Category字段,其中的选项是根据Select构建的,但是似乎没有办法做到这一点。

我的$product->categories资源字段:

Product

还有我的枢纽public function fields(Request $request) { return [ ID::make()->sortable(), Text::make('Name'), BelongsToMany::make('Teams')->fields(new ProductTeamFields), }

ProductTeamFields

因此,当我单击“附加”时,上面的两个字段会在我的编辑屏幕中正确显示,但无法弄清楚如何获取父表关系来填充此列表。

0 个答案:

没有答案