表格构造器 - Columns
Select column
概述
下拉列表列(SelectColumn)允许你在表格内渲染下拉列表(Select),可用于在不打开新页面或模态框的情况下更新数据库记录:
你必须将选项传入到该列中:
use Filament\Tables\Columns\SelectColumn; SelectColumn::make('status') ->options([ 'draft' => 'Draft', 'reviewing' => 'Reviewing', 'published' => 'Published', ])
验证
以数组的方式传入任何 Laravel 验证规则,你可以对输入进行验证:
use Filament\Tables\Columns\SelectColumn; SelectColumn::make('status') ->options([ 'draft' => 'Draft', 'reviewing' => 'Reviewing', 'published' => 'Published', ]) ->rules(['required'])
禁用占位符选择
使用 selectablePlaceholder()
方法,你可以防止占位符被选中:
use Filament\Tables\Columns\SelectColumn; SelectColumn::make('status') ->options([ 'draft' => 'Draft', 'reviewing' => 'Reviewing', 'published' => 'Published', ]) ->selectablePlaceholder(false)
生命周期钩子
钩子可用于在 Select 生命周期的各个点中执行代码:
SelectColumn::make() ->beforeStateUpdated(function ($record, $state) { // 在状态保存到数据库之前运行 }) ->afterStateUpdated(function ($record, $state) { // 在状态保存到数据库之后运行 })
Edit on GitHubStill need help? Join our Discord community or open a GitHub discussion