Skip to main content
Quick Tip

Filament: Unique Record in the Edit Form

If you use validation with ->unique(), don't forget to ignore the current record in the Edit form.

Otherwise, you will have a validation error "The [field] has already been taken." in the Edit form.

// Don't just do that:
TextInput::make('name')
->required()
->unique(),
 
// Do this instead:
TextInput::make('name')
->required()
->unique(ignoreRecord: true),

Enjoyed This Tip?

Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.

Recent Courses on Laravel Daily

Laravel 13 Starter Kit Teams and Customizations

10 lessons
33 min

Roles and Permissions in Laravel 13

14 lessons
57 min

Testing in Laravel 13 For Beginners

26 lessons
1 h 41 min read