StudentController::store()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 3
dl 0
loc 9
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace App\Http\Controllers\API;
4
5
use App\Actions\CreateStudent;
6
use App\Http\Requests\StoreStudentRequest;
7
use App\Http\Resources\StudentResource;
8
use App\Models\School;
9
use Illuminate\Routing\Middleware\SubstituteBindings;
10
use Spatie\RouteAttributes\Attributes\{Post, Prefix};
11
12
#[Prefix('/api/v1')]
13
final class StudentController
14
{
15
    #[Post('schools/{school}/students', middleware: SubstituteBindings::class)]
16
    public function store(
17
        School $school,
18
        StoreStudentRequest $request,
19
        CreateStudent $createStudent,
20
    ) {
21
        $student = $createStudent->handle($school, $request->validated());
22
23
        return StudentResource::make($student);
24
    }
25
}
26