1 回答

TA貢獻1817條經驗 獲得超6個贊
在 laravel 控制器中,action 可以接收一個 Request 對象作為參數,該對象可用于從前端獲取過濾器。
public function searchFilms(Request $request)
{
$data = $request->all();
$user = Auth::user();
return FilmResource::collection($this->repository->searchFilms($data));
}
Request 類有不止一種獲取數據的方法,你可以閱讀這篇文章來了解它們,但是,->all()(更多關于它的信息是其中一種方法。
然后將數據傳遞給您的 searchFilms 函數并應用過濾器
public function searchFilms($filters)
{
$films= Film::from('films')
->join('categories', 'films.id', '=', $filters['film_id'])
->join('locations', 'id', '=', $filters['location_id'])
->join('age_rating', 'id', $filters['age_rating_id'])
->orderBy('updated_at', 'desc');
}
類似的東西會起作用,我不知道你輸入的名稱,但你可以從中得到一個想法。
已編輯
因此,為了在評論中澄清您的問題。
$request->all() 將返回您發布的數據的數組,其中輸入的屬性名稱將是每個值的鍵。例如,假設我有以下 html 表單:
<form>
<input name="name" type="text" value="john doe" />
<input name="age" type="text" value="39" />
</form>
$request->all()將是這樣的數組['title' => 'john doe', 'age' => '39'];
- 1 回答
- 0 關注
- 108 瀏覽
添加回答
舉報