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),

Recent New Courses