Laravel 경로 매개변수 및 컨트롤러 작업
// app/Http/Controllers/FilmReviewController.php
class FilmReviewController extends Controller {
public function edit(Request $request, FilmReview $filmReview)
{
//
}
}
하지만 좋지 않은 점은 컨트롤러 작업의 매개변수 이름이 경로 매개변수 이름과 일치해야 한다는 것입니다. 이것은 당신 중 일부를 놀라게 할 수 있습니다. 그것은 확실히 나를 했다.
다음 리소스 경로를 정의했다고 가정해 보겠습니다.
// routes/web.php
Route::resource('reviews', 'FilmReviewController');
그러면
edit
작업에 대해 다음 경로가 생성됩니다.PUT /reviews/{review}
이제 컨트롤러를 다음과 같이 업데이트해야 합니다.
// Notice I changed $filmReview to $review
public function edit(Request $request, FilmReview $review)
{
//
}
경로 매개변수 이름과 컨트롤러 작업의 매개변수 이름이 일치하지 않으면 db에서 모델을 가져오지 않습니다. 따라서
$review->id
와 같은 호출은 항상 null을 반환합니다.
Reference
이 문제에 관하여(Laravel 경로 매개변수 및 컨트롤러 작업), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/vlence/laravel-route-parameters-controller-actions-3pil텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)