{$this->attribute}()->getPivotAccessor(); foreach ($model->{$this->attribute}()->withoutGlobalScopes()->cursor() as $related) { $resource = Nova::newResourceFromModel($related); $pivot = $related->{$pivotAccessor}; $pivotFields = $resource->resolvePivotFields($request, $request->resource); $pivotFields->whereInstanceOf(Deletable::class) ->filter->isPrunable() ->each(function ($field) use ($request, $pivot) { /** @var \Laravel\Nova\Fields\Field&\Laravel\Nova\Contracts\Deletable $field */ DeleteField::forRequest($request, $field, $pivot)->save(); }); $pivot->delete(); } return true; }; } }