📌
laravel filamentでGetパラメーターを取得
今回は新規作成画面でGETパラメーターを取得したい
リソース名はDocumentとする。
/admin/documents/create?project_id=2
のproject_id=2を取得したい場合、
CreateDocument.phpでパラメーターの受け皿を用意
app\Filament\Resources\DocumentResource\Pages\CreateDocument.php
class CreateDocument extends CreateRecord
{
protected static string $resource = DocumentResource::class;
+ public $project_id = null;
+ protected $queryString = ['project_id'];
}
リソースから利用する
use Livewire\Component as Livewire;
Components\Select::make('project_id')->label('プロジェクト')
->options(
return Project::all()->pluck('name', 'id');
)
->default(function(Livewire $livewire){
//$livewireはページのLivewireCompornent
+ dd($livewire->project_id);
);
のように取得する。
これは、FilamentというよりもLiveWire側の機能で、公式は以下
Discussion