© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•3y ago
msalehi

mutate relation data before saving

Hey there,
How can i mutate relation data before editing or creating parent record?
for example i have this code for form:

TextInput::make('first_name')->label('نام')
         ->required(),
TextInput::make('last_name')->label('نام خانوادگی')
         ->required(),
TextInput::make('email')->label('ایمیل')
         ->email()
         ->unique(ignoreRecord: true)
         ->required(),
Repeater::make('contactChannels')
                        ->label('اطلاعات تماس')
                        ->relationship()
                        ->cloneable()
                        ->schema([
                            Select::make('slug')->label('نوع')
                                ->options(ContactChannelTypeEnum::labels())
                                ->native(false)
                                ->selectablePlaceholder(false)
                                ->live()
                                ->afterStateUpdated(function (Set $set, $state) {

                                }),
                            TextInput::make('value')
                                ->extraAttributes([
                                    'class' => '',
                                    'dir' => 'ltr'
                                ])
                                ->extraInputAttributes([
                                    'class' => 'text-left'
                                ])
                                ->prefix(function (Get $get) {
                                    $slug = $get('slug') ?? 'mobile';
                                    return ContactChannelTypeEnum::tryFrom($slug)->prefix();
                                })
                                ->label('مقدار'),
TextInput::make('first_name')->label('نام')
         ->required(),
TextInput::make('last_name')->label('نام خانوادگی')
         ->required(),
TextInput::make('email')->label('ایمیل')
         ->email()
         ->unique(ignoreRecord: true)
         ->required(),
Repeater::make('contactChannels')
                        ->label('اطلاعات تماس')
                        ->relationship()
                        ->cloneable()
                        ->schema([
                            Select::make('slug')->label('نوع')
                                ->options(ContactChannelTypeEnum::labels())
                                ->native(false)
                                ->selectablePlaceholder(false)
                                ->live()
                                ->afterStateUpdated(function (Set $set, $state) {

                                }),
                            TextInput::make('value')
                                ->extraAttributes([
                                    'class' => '',
                                    'dir' => 'ltr'
                                ])
                                ->extraInputAttributes([
                                    'class' => 'text-left'
                                ])
                                ->prefix(function (Get $get) {
                                    $slug = $get('slug') ?? 'mobile';
                                    return ContactChannelTypeEnum::tryFrom($slug)->prefix();
                                })
                                ->label('مقدار'),


i have access to user data using mutateFormDataBeforeSave() in EditUser.php but it does not contain relation data.
Filament banner
FilamentJoin
A powerful open source UI framework for Laravel • Build and ship admin panels & apps fast with Livewire
20,307Members
Resources
Was this page helpful?

Similar Threads

Recent Announcements

Similar Threads

Mutate ManageRelatedRecords data before saving
FilamentFFilament / ❓┊help
2y ago
Mutate relation data before save
FilamentFFilament / ❓┊help
3y ago
Mutate data before saving in register
FilamentFFilament / ❓┊help
3y ago
Customizing data before saving in Relation Manager
FilamentFFilament / ❓┊help
3y ago