Table Builder
Empty state
Overview
The table's "empty state" is rendered when there are no rows in the table.
![Table with empty state](https://github.com/filamentphp/filament/blob/3.x/docs-assets/screenshots/images/light/tables/empty-state.jpg?raw=true)
Setting the empty state heading
To customize the heading of the empty state, use the emptyStateHeading()
method:
use Filament\Tables\Table; public function table(Table $table): Table{ return $table ->emptyStateHeading('No posts yet');}
![Table with customized empty state heading](https://github.com/filamentphp/filament/blob/3.x/docs-assets/screenshots/images/light/tables/empty-state-heading.jpg?raw=true)
Setting the empty state description
To customize the description of the empty state, use the emptyStateDescription()
method:
use Filament\Tables\Table; public function table(Table $table): Table{ return $table ->emptyStateDescription('Once you write your first post, it will appear here.');}
![Table with empty state description](https://github.com/filamentphp/filament/blob/3.x/docs-assets/screenshots/images/light/tables/empty-state-description.jpg?raw=true)
Setting the empty state icon
To customize the icon of the empty state, use the emptyStateIcon()
method:
use Filament\Tables\Table; public function table(Table $table): Table{ return $table ->emptyStateIcon('heroicon-o-bookmark');}
![Table with customized empty state icon](https://github.com/filamentphp/filament/blob/3.x/docs-assets/screenshots/images/light/tables/empty-state-icon.jpg?raw=true)
Adding empty state actions
You can add Actions to the empty state to prompt users to take action. Pass these to the emptyStateActions()
method:
use Filament\Tables\Actions\Action;use Filament\Tables\Table; public function table(Table $table): Table{ return $table ->emptyStateActions([ Action::make('create') ->label('Create post') ->url(route('posts.create')) ->icon('heroicon-m-plus') ->button(), ]);}
![Table with empty state actions](https://github.com/filamentphp/filament/blob/3.x/docs-assets/screenshots/images/light/tables/empty-state-actions.jpg?raw=true)
Using a custom empty state view
You may use a completely custom empty state view by passing it to the emptyState()
method:
use Filament\Tables\Actions\Action;use Filament\Tables\Table; public function table(Table $table): Table{ return $table ->emptyState(view('tables.posts.empty-state'));}
Edit on GitHubStill need help? Join our Discord community or open a GitHub discussion