Skip to content

Commit 79f28ac

Browse files
committed
fix wrong fields showing up on creation
1 parent 881c3b6 commit 79f28ac

File tree

1 file changed

+12
-13
lines changed

1 file changed

+12
-13
lines changed

src/InlineMorphTo.php

+12-13
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use Laravel\Nova\Fields\Field;
1212
use Laravel\Nova\Fields\HasMany;
1313
use Laravel\Nova\Fields\HasOne;
14+
use Laravel\Nova\Http\Controllers\CreationFieldController;
1415
use Laravel\Nova\Http\Controllers\ResourceIndexController;
1516
use Laravel\Nova\Http\Controllers\ResourceShowController;
1617
use Laravel\Nova\Http\Controllers\UpdateFieldController;
@@ -95,21 +96,19 @@ private function resolveFields(Resource $resourceInstance): Collection
9596
$request = app(NovaRequest::class);
9697
$controller = $request->route()->controller;
9798

98-
if ($controller instanceof UpdateFieldController) {
99+
switch (get_class($controller)) {
99100

100-
return $resourceInstance->updateFields($request);
101+
case CreationFieldController::class :
102+
return $resourceInstance->creationFields($request);
101103

102-
}
103-
104-
if ($controller instanceof ResourceShowController) {
105-
106-
return $resourceInstance->detailFields($request);
107-
108-
}
104+
case UpdateFieldController::class :
105+
return $resourceInstance->updateFields($request);
109106

110-
if ($controller instanceof ResourceIndexController) {
107+
case ResourceShowController::class :
108+
return $resourceInstance->detailFields($request);
111109

112-
return $resourceInstance->indexFields($request);
110+
case ResourceIndexController::class :
111+
return $resourceInstance->indexFields($request);
113112

114113
}
115114

@@ -220,11 +219,11 @@ public function jsonSerialize()
220219
$originalResource = $request->route()->resource;
221220

222221
/**
223-
* Temporarily remap the route resource key so every sub field thinks it's being resolved by it's original parent
222+
* Temporarily remap the route resource key so every sub field thinks its being resolved by its original parent
224223
*/
225224
foreach ($this->meta[ 'resources' ] as $resource) {
226225

227-
$resource[ 'fields' ] = $resource[ 'fields' ]->transform(function (&$field) use ($request, $resource) {
226+
$resource[ 'fields' ] = $resource[ 'fields' ]->transform(function ($field) use ($request, $resource) {
228227

229228
$request->route()->setParameter('resource', $resource[ 'uriKey' ]);
230229

0 commit comments

Comments
 (0)