Fix: admin/manager land on edit page, viewer on view page
Deploy / deploy (push) Successful in 16s

Filament checks view before edit for row URL. Added a shared
ViewRecord base that redirects to edit if canEdit() is true,
so admins and managers get the editable form directly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Malek TellissiandClaude Sonnet 4.6 committed 2026-09-13 03:05:05 +02:00
1 parent 9f42f730b8
commit 0500cab160
8 files changed
+26 -7

No files matched your search

+19
View File
@@ -0,0 +1,19 @@
<?php
namespace App\Filament\Pages;
use Filament\Resources\Pages\ViewRecord as BaseViewRecord;
class ViewRecord extends BaseViewRecord
{
public function mount(int|string $record): void
{
parent::mount($record);
$resource = static::getResource();
if ($resource::canEdit($this->record)) {
$this->redirect($resource::getUrl('edit', ['record' => $this->record]));
}
}
}
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\PackingResource\Pages; namespace App\Filament\User\Resources\PackingResource\Pages;
use App\Filament\User\Resources\PackingResource; use App\Filament\User\Resources\PackingResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewPacking extends ViewRecord class ViewPacking extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\ProductInventoryResource\Pages; namespace App\Filament\User\Resources\ProductInventoryResource\Pages;
use App\Filament\User\Resources\ProductInventoryResource; use App\Filament\User\Resources\ProductInventoryResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewProductInventory extends ViewRecord class ViewProductInventory extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\ProductResource\Pages; namespace App\Filament\User\Resources\ProductResource\Pages;
use App\Filament\User\Resources\ProductResource; use App\Filament\User\Resources\ProductResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewProduct extends ViewRecord class ViewProduct extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\ProductSaleResource\Pages; namespace App\Filament\User\Resources\ProductSaleResource\Pages;
use App\Filament\User\Resources\ProductSaleResource; use App\Filament\User\Resources\ProductSaleResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewProductSale extends ViewRecord class ViewProductSale extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\SpiceResource\Pages; namespace App\Filament\User\Resources\SpiceResource\Pages;
use App\Filament\User\Resources\SpiceResource; use App\Filament\User\Resources\SpiceResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewSpice extends ViewRecord class ViewSpice extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\SpiceSupplierResource\Pages; namespace App\Filament\User\Resources\SpiceSupplierResource\Pages;
use App\Filament\User\Resources\SpiceSupplierResource; use App\Filament\User\Resources\SpiceSupplierResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewSpiceSupplier extends ViewRecord class ViewSpiceSupplier extends ViewRecord
{ {
@@ -3,7 +3,7 @@
namespace App\Filament\User\Resources\SupplierResource\Pages; namespace App\Filament\User\Resources\SupplierResource\Pages;
use App\Filament\User\Resources\SupplierResource; use App\Filament\User\Resources\SupplierResource;
use Filament\Resources\Pages\ViewRecord; use App\Filament\Pages\ViewRecord;
class ViewSupplier extends ViewRecord class ViewSupplier extends ViewRecord
{ {