KHN-プログラミングブログ-

リファクタリング

サービスコントローラーについて

例えばUserControllerに下記の文があった場合

use App\Models\User;
use Illuminate\Http\Request;

public function userAdd($request){
    $user = new User;
    $user->name = "太郎";
    $user->kana = $request->kana;
    $user->save();
}

・app/Services直下に記載
・クラス名はファイル名と合わせる。
・app/Services/UserServiceを作成

namespace App\Service;
use App\Models\User;

class UserServise{

 public static function UserServiceAdd($request){
    $user = new User;
    $user->name = "太郎";
    $user->kana = $request->kana;
    $user->save();
 }

}

・useで呼び出す
・関数を呼び出し引数に値を入れる。

app/Http/Controller/User

use App\Models\User;
use Illuminate\Http\Request;
use App\Services\UserServiceAdd;

public function userAdd(Request $request){

return UserService::UserServiceAdd($request);

}