Skip to content

Commit

Permalink
don’t save relationships
Browse files Browse the repository at this point in the history
  • Loading branch information
edalzell committed Jan 6, 2025
1 parent 1179329 commit aa5cb0c
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions src/Http/Controllers/CP/ResourceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
use Statamic\Facades\User;
use Statamic\Fields\Field;
use Statamic\Http\Controllers\CP\CpController;
use StatamicRadPack\Runway\Fieldtypes\BelongsToFieldtype;
use StatamicRadPack\Runway\Fieldtypes\HasManyFieldtype;
use StatamicRadPack\Runway\Http\Requests\CP\CreateRequest;
use StatamicRadPack\Runway\Http\Requests\CP\EditRequest;
use StatamicRadPack\Runway\Http\Requests\CP\IndexRequest;
Expand Down Expand Up @@ -221,10 +223,15 @@ private function saveNonRevisableFields(Resource $resource, Model $model): void
{
$dbVersion = $model->fresh();

$resource->blueprint()->fields()->all()
$fields = $resource->blueprint()->fields()->all()
->reject(fn (Field $field) => $field->isRevisable())
->each(fn ($ignore, string $fieldHandle) => $dbVersion->setAttribute($fieldHandle, $model->{$fieldHandle}));
->reject(fn (Field $field) => $field->fieldtype() instanceof BelongsToFieldtype)
->reject(fn (Field $field) => $field->fieldtype() instanceof HasManyFieldtype);

$dbVersion->save();
if ($fields->isNotEmpty()) {
$fields->each(fn ($ignore, string $fieldHandle) => $dbVersion->setAttribute($fieldHandle, $model->{$fieldHandle}));

$dbVersion->save();
}
}
}

0 comments on commit aa5cb0c

Please sign in to comment.