Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

neobung's avatar

How to prepopulate TextInput fields inside a Repeater in Laravel Filament V3

I have repeater that displays schedule timings for each day for a Batch. So each batch can have a BatchSchedule. I want to prepopulate the Days field as 'Sunday', 'Monday' ...... . However I am unable to achieve it. I tried using default() on the TextInput field but it cannot be dynamic. Here is my code for the repeater part:

Repeater::make('schedule')->hiddenLabel()
->schema([
	TextInput::make('Days')->hiddenLabel()->columnSpan(1),
	TimePicker::make('start_time')->required()->hiddenLabel()->columnSpan(1),
	TimePicker::make('end_time')->required()->hiddenLabel()->columnSpan(1),
	Checkbox::make('status')->label('Enable')->default(true)->hiddenLabel()->columnSpan(1),
])->deletable(false)->addable(false)->reorderable(false)->columns(4)->columnSpan(4)->defaultItems(3)->minItems(3),

Is it possible to do using repeater? Is there any way to implement such form in laravel filament?

0 likes
1 reply
lirimahmeti's avatar

Hello there! I have had the same kind of requirement and after weeks of searching i just found out that you can just use the default() method on the repeater and define the default items as an array.

Repeater::make('analysisResults') ->emptyLabel('Nuk keni shtuar asnjë test.') ->relationship() ->default([ ['water_test_id' => 1, 'result' => null, 'is_acceptable' => false], ['water_test_id' => 2, 'result' => null, 'is_acceptable' => false], ['water_test_id' => 3, 'result' => null, 'is_acceptable' => false], ['water_test_id' => 4, 'result' => null, 'is_acceptable' => false], ])

1 like

Please or to participate in this conversation.