© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•3y ago•
2 replies
Arzu

dynamically add fields based on an array

i have a file input, that proccess a csv file.
after the process it outputs an array.
i want filament to print for each row in the array a set of fields in the same form.

example for the final form after the process :
[
    ['John Doe', 30, 'Developer', '1991-01-01'],
    ['Jane Doe', 25, 'Designer', '1996-02-02'],
    ['Alice', 35, 'Manager', '1986-03-03'],
    ['Bob', 40, 'CEO', '1981-04-04'],
    ['Charlie', 45, 'CTO', '1976-05-05'],
];
[
    ['John Doe', 30, 'Developer', '1991-01-01'],
    ['Jane Doe', 25, 'Designer', '1996-02-02'],
    ['Alice', 35, 'Manager', '1986-03-03'],
    ['Bob', 40, 'CEO', '1981-04-04'],
    ['Charlie', 45, 'CTO', '1976-05-05'],
];


now i want each one to have a set of fields that will look like this


 <form method="POST" action="/path/to/your/route">
        @csrf
        @foreach($users as $index => $user)
            <div>
                <label for="name_{{ $index }}">Name</label>
                <input type="text" id="name_{{ $index }}" name="users[{{ $index }}][name]" value="{{ $user[0] }}">
            </div>
            <div>
                <label for="age_{{ $index }}">Age</label>
                <input type="number" id="age_{{ $index }}" name="users[{{ $index }}][age]" value="{{ $user[1] }}">
            </div>
            <div>
                <label for="position_{{ $index }}">Position</label>
                <input type="text" id="position_{{ $index }}" name="users[{{ $index }}][position]" value="{{ $user[2] }}">
            </div>
            <div>
                <label for="dob_{{ $index }}">Date of Birth</label>
                <input type="date" id="dob_{{ $index }}" name="users[{{ $index }}][dob]" value="{{ $user[3] }}">
            </div>
        @endforeach
        <button type="submit">Submit</button>
    </form>

 <form method="POST" action="/path/to/your/route">
        @csrf
        @foreach($users as $index => $user)
            <div>
                <label for="name_{{ $index }}">Name</label>
                <input type="text" id="name_{{ $index }}" name="users[{{ $index }}][name]" value="{{ $user[0] }}">
            </div>
            <div>
                <label for="age_{{ $index }}">Age</label>
                <input type="number" id="age_{{ $index }}" name="users[{{ $index }}][age]" value="{{ $user[1] }}">
            </div>
            <div>
                <label for="position_{{ $index }}">Position</label>
                <input type="text" id="position_{{ $index }}" name="users[{{ $index }}][position]" value="{{ $user[2] }}">
            </div>
            <div>
                <label for="dob_{{ $index }}">Date of Birth</label>
                <input type="date" id="dob_{{ $index }}" name="users[{{ $index }}][dob]" value="{{ $user[3] }}">
            </div>
        @endforeach
        <button type="submit">Submit</button>
    </form>


ignore the inconsistencies, this was just an example i wrote.

how to i dup the form inputs based on the array?
Solution
if anyone intrested, i solved it.

basically whenever i want to add fields to the form i can just use the function
 $this->form->schema()
 $this->form->schema()
.
the issue is that it will overwrite the previous one and only add the latest. so my solution for this was to run a loop of forms, store them in an array and just
 $this->form->schema($array)
 $this->form->schema($array)


the array contains a normal schema syntax.
Jump to solution
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

Dynamic form fields based on dependant fields
FilamentFFilament / ❓┊help
3y ago
filling fields based on content of other fields.
FilamentFFilament / ❓┊help
3y ago
Dynamically add Filters
FilamentFFilament / ❓┊help
3y ago
default value on dynamically added form fields
FilamentFFilament / ❓┊help
17mo ago