[英]FilamentPHP - How create a relationship in the same modal
我正在使用 FilamentPHP 創建一個管理面板。 我有一個 model 用於類別,在這個 model 中,我創建了具有 id、slug 名稱和 parent_id 的結構。
parent_id 填入另一個已經存在的類的ID,創建父類和子類。
如何在類別創建方法中使用現有類別列表創建 select? 正如您在下面看到的,我嘗試在表單中使用它但沒有成功。
public static function form(Form $form): Form
{
return $form
->schema([
Forms\Components\TextInput::make('name')
->required()
->maxLength(255),
Forms\Components\TextInput::make('parent_id'),
Select::make('categories')
->relationship('categories', 'name')
->preload()
]);
}
這樣的事情應該有效。
public static function form(Form $form): Form
{
$categories = Category::all();
$options = [];
foreach ($categories as $category) {
$options[$category->id] = $category->name;
}
return $form
->schema([
Forms\Components\TextInput::make('name')
->required()
->maxLength(255),
Forms\Components\TextInput::make('parent_id'),
Select::make('categories')
->options($options) // Set select options to list of categories
]);
}
我設法以一種比方說更優雅的方式完成了我需要的事情。 我想舉個例子。
Select::make('parent_id')
->options(Category::query()->pluck('name', 'id'))
->preload()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.