##わからないこと
FatControllerを避ける為の解決策として、リクエストのデータに関する処理を FormRequest に記述するといった解決策があること知り、使い方について学んでいます。
FormRequestにて、rules()を使いバリデーションを設定することでcontrollerの可読性が上がることは理解できたのですが、
下記のようなコードの場合に、indexメソッドにある$requestに関する処理も個別にIndexRequestを作成してFormRequestにまとめるべきなのか?と思い、ドキュメント等を調べたのですが言及されている記事を見つけることができず困っています。(ググり力がなく申し訳ございません)
このぐらいの行数であればこのままメソッド内にベタ書きでも良いのかなと思っていますが、今後の変更(コードが増えること)を想定して予め機能単位で処理を管理できるようFormRequestに書いておくべきなのでしょうか?FormRequestに書いておくべき場合、記述例を知りたく存じます。何卒、よろしくお願い致します。
php
1public function index(Request $request, Article $article) 2 { 3 $query = Article::with(['user', 'likes', 'tags'])->orderBy('created_at', 'desc'); 4 5 // FormRequestに移すべき処理? 6 if (null !== $request->input('search')) { 7 8 $search_splits = preg_split('/[\p{Z}\p{Cc}]++/u', $request->input('search'), -1, PREG_SPLIT_NO_EMPTY); 9 10 foreach ($search_splits as $value) { 11 12 $query->where('title', 'like', '%' . $value . '%') 13 ->orWhere('body', 'like', '%' . $value . '%') 14 ->orWhere('news', 'like', '%' . $value . '%'); 15 } 16 } 17 $articles = $query->paginate(10); 18 19 return view('articles.index', compact('articles')); 20 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/11 05:20 編集