Skip to content

Shorts

Avviso di salvare le modifiche ▼

Avviso di salvare le modifiche

In Filament bisogna “dire” al sistema di avvisare l’utente quando esce da una modifica di un record senza prima averle salvate:

->unsavedChangesAlerts()

Questo metodo deve essere aggiunto a return $panel

del file AdminPanelProvider.php

Rendere collassabile la sidebar ▼

Rendere collassabile la sidebar

Per rendere collassabile la sidebar in Filament aggiungiamo questo metodo nel file app/Providers/AdminPanelProvider.php:

return $panel
    ...
    ->sidebarCollapsibleOnDesktop()
    ...

 

Cambiare la larghezza del content delle pagine ▼
Tornare alla lista dopo un salvataggio di un record ▼

Tornare alla lista dopo un salvataggio di un record

Quando creiamo o modifichiamo un record di una risorsa Filament, spesso vogliamo tornare all’elenco invece del comportamento di default che ci porterebbe alla view che mostra i dati appena salvati.

Per ottenere questo comportamento dobbiamo aggiungere un metodo nella pagina specifica, per esempio nel file app/Filament/Resources/Cars/Pages/CreateCar.php

protected function getRedirectUrl(): string
{
    return $this->getResource()::getUrl('index');
}

 

Creare utente Filament ▼

Creare utente Filament

Per creare un utente FilamentPHP (vedi questo articolo per installare un progetto Laravel che usi Filament)

php artisan make:filament-user

Inserire:

  • un nome utente
  • un indirizzo email
  • una password
Aggiungere la gestione dei ruoli in Filament ▼

Aggiungere la gestione dei ruoli in Filament

Per rendere pubblico il file di configurazione di Filament Shield usiamo

php artisan vendor:publish --tag=filament-shield-config

Poi apriamo il file app/Providers/Filament/AdminPanelProvider.php e aggiungiamo questo plugin alla lista:

use BezhanSalleh\FilamentShield\FilamentShieldPlugin;

...

->plugins([
    FilamentShieldPlugin::make(),
])

 

Documentazione Custom Pages FilamentPHP ▼
Aumentare l’area di un RichEditor ▼

Aumentare l’area di un RichEditor

Per rendere più alta l’area di inserimento di un RichEditor in FIlament usare uno stile che preferiamo come questo:

->extraInputAttributes(['style' => 'min-height: 20rem; max-height: 50vh; overflow-y: auto;'])

La documentazione del RichEditor è qui.

Aggiungere un campo Hidden in un form Filament ▼

Aggiungere un campo Hidden in un form Filament

Se abbiamo la necessità di creare uno “spazio” vuoto o di trasferire un’informazione in modo nascosto in un form di Filament, possiamo usare il tipo di campo Hidden:

use Filament\Forms\Components\FileUpload;

Hidden::make('space')->default(null)->columnSpanFull(),

 

Creare Policy in Filament Shield ▼

Creare Policy in Filament Shield

Non basta definire i permessi per ogni ruolo dal backend di FIlament, bisogna creare un file che gestisca le varie policies in base al ruolo utente:

php artisan shield:generate --resource=NomeModelloResource --panel=admin