过滤器布局
将过滤器定位到网格列中
要修改过滤器占用的列数,你可以使用 filtersFormColumns() 方法
use Filament\Tables\Table;
public function table(Table $table): Table
{
return $table
->filters([
// ...
])
->filtersFormColumns(3);
}
控制过滤器下拉菜单的宽度
要自定义下拉菜单的宽度,你可以使用 filtersFormWidth() 方法,并指定一个宽度 - ExtraSmall、Small、Medium、Large、ExtraLarge、TwoExtraLarge、ThreeExtraLarge、FourExtraLarge、FiveExtraLarge、SixExtraLarge 或者 SevenExtraLarge。默认宽度是 ExtraSmall:
use Filament\Support\Enums\Width;
use Filament\Tables\Table;
public function table(Table $table): Table
{
return $table
->filters([
// ...
])
->filtersFormWidth(Width::FourExtraLarge);
}
控制过滤器下拉菜单的最大高度
使用 filtersFormMaxHeight() 方法,并传入一个 CSS 长度,可以为过滤器下拉菜单内容添加最大高度,使之在内容溢出时滚动:
use Filament\Tables\Table;
public function table(Table $table): Table
{
return $table
->filters([
// ...
])
->filtersFormMaxHeight('400px');
}
在模态框中显示过滤器
要在模态框中显示过滤器,替换原来的下拉方式,你可以:
use Filament\Tables\Enums\FiltersLayout;
use Filament\Tables\Table;
public function table(Table $table): Table
{
return $table
->filters([
// ...
], layout: FiltersLayout::Modal);
}
你可以使用触发 Action API 来自定义模态框,也可以使用 slideOver()。
在表格内容上方显示过滤器
要在表格内容渲染上方过滤器,而非使用下拉菜单,你可以这样使用:
use Filament\Tables\Enums\FiltersLayout;
use Filament\Tables\Table;
public function table(Table $table): Table
{
return $table
->filters([
// ...
], layout: FiltersLayout::AboveContent);
}

