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