Filament: Delete Attachments when Deleting a Record

Filament does not delete uploaded files when user deletes the record. Modify getActions() function in the edit page as below:

protected function getActions(): array
{
return [
Actions\DeleteAction::make()
->after(function (YourModel $record) {
// delete single
if ($record->photo) {
Storage::disk('public')->delete($record->photo);
}
// delete multiple
if ($record->galery) {
foreach ($record->galery as $ph) Storage::disk('public')->delete($ph);
}
})
];
}

Tip given by sandeshkumard

Like our articles?

Become a Premium Member for $129/year or $29/month
What else you will get:
  • 59 courses (1057 lessons, total 42 h 44 min)
  • 79 long-form tutorials (one new every week)
  • access to project repositories
  • access to private Discord

Recent Premium Tutorials