FilamentF
Filament16mo ago
dyo

Problem getting multiple select value in action modal form

How can I get multiple select values of form method in action method in Action class?
I didn't find it when I check in $data at action method function.

Action::make('masuka_label')
    ->action(function ($record, array $data, $livewire): void {
        dd(
            $record,
            $data,
            $livewire
        );

        $user = auth()->user();

        $label = [
            'label_id' => $data['label_id'],
            'prospek_id' => $record->id,
            'prioritas_id' => $user->prioritas_id,
            'cms_users_id' => $user->id,
            'lembagaId' => $user->lembaga_id,
        ];

        if ($data['label_baru'] == null) {
            LabelProspek::updateOrCreate($label, $label);
        } else {
            $label['label_id'] = Label::create(['label' => $data['label_baru']])->id;
            LabelProspek::create($label);
        }
    })
    ->fillForm(fn($record) => [
        'label_prospek' => $record->label_prospek->pluck('id')
    ])
    ->form([
        Select::make('label_prospek')
            ->multiple()
            ->relationship(
                'label_prospek',
                'label',
                fn(Builder $query) => $query
                    ->whereHas('label_prospek', function (Builder $q) {
                        return $q->where('cms_users_id', auth()->user()->id);
                    })
            )
            ->preload(),

        TextInput::make('label_baru')
    ])
    ->requiresConfirmation(),
Was this page helpful?