© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
FilamentF
Filament•3mo ago•
19 replies
Mansoor Khan

Dashboard Filter select dropdown reloads all the widgets

I am filtering widget data by following this guide: https://filamentphp.com/docs/4.x/widgets/overview#filtering-widget-data

I have a Dashboard page with following filters form. When opening the select dropdown, it reloads all the widgets available on page and runs all the queries even before showing the select drop down. This delays the select drop down options until all the widgets are reloaded.

All the widgets are using
InteractsWithPageFilters
InteractsWithPageFilters
trait.

I need some help to understand and avoid reloading all the data unless user actually selects something.

I have also tried Filtering widget data using an action modal
But same problem with Modal as well, even clicking the Modal action button reloads the page and runs all the queries before even opening the Modal.

class Dashboard extends BaseDashboard
{
    use HasFiltersForm;

    public function filtersForm(Schema $schema): Schema
    {
        return $schema
            ->components([
                Section::make()
                    ->schema([
                        Select::make('country_id')
                          ->live()
                          ->searchable()
                          ->preload()
                          ->options(fn () => Model::query()...)
                          ->afterStateUpdated(function ($state, Set $set) { ... })
                    ]),
            ]);
    }
}
class Dashboard extends BaseDashboard
{
    use HasFiltersForm;

    public function filtersForm(Schema $schema): Schema
    {
        return $schema
            ->components([
                Section::make()
                    ->schema([
                        Select::make('country_id')
                          ->live()
                          ->searchable()
                          ->preload()
                          ->options(fn () => Model::query()...)
                          ->afterStateUpdated(function ($state, Set $set) { ... })
                    ]),
            ]);
    }
}
Overview - Widgets - Filament
Filament banner
FilamentJoin
A powerful open source UI framework for Laravel • Build and ship admin panels & apps fast with Livewire
20,307Members
Resources

Similar Threads

Was this page helpful?
Recent Announcements

Similar Threads

Dashboard widgets
FilamentFFilament / ❓┊help
12mo ago
Filter the dashboard
FilamentFFilament / ❓┊help
3y ago
Hide Select Dropdown depends on the Select Dropdown value?
FilamentFFilament / ❓┊help
2y ago
Remove All From Select Filter
FilamentFFilament / ❓┊help
8mo ago