단일 도메인/하위 도메인 프로젝트가 있습니다. 내 페이지가 제대로로드되지 않은 후, 컨트롤러에서 덤프를했다 라우트 라우팅 이상한 동작
Route::prefix('events')->namespace('Content\Controller')->group(function() {
Route::get('/', '[email protected]')->name('event.index');
Route::get('{slug}', '[email protected]')->name('event.show');
Route::get('{slug}/edit', '[email protected]')->name('event.edit');
Route::post('load-more-ajax/{region?}', '[email protected]');
Route::any('sorted-ajax/{region?}', '[email protected]');
Route::get('category/{category_slug}/{subcategory_slug?}', '[email protected]');
});
가 :
public function getView($slug)
{
return $slug;
}
이 경로에 도착하는 슬러그하여 이벤트를보기 위해,이 경로를 만들어 이 URL은 https://example.com/events/slug-example
입니다.
문제는 경로를 변경했을 때 응답이 표시 될 때 경로가 맞았지만 대신 슬러그가 표시되지 않는다는 것입니다. 대신 Region
개체가 반환됩니다.
내가 이렇게 할 경우 :
public function getView($region, $slug)
{
return $slug;
}
가 그럼 난 슬러그를 다시 얻을. 그러나 나는 이것이 어떻게 가능하고, 어떻게 할 수 있을지 전혀 모른다. (나는 기존 프로젝트에서 다른 개발자로왔다).
모든 미들웨어를 주석 처리했지만 여전히 동일합니다. 명시 적으로 말하지 않으면 무엇을 어떻게 채울 수 있습니까?
Route::bind('region', function ($value) {
...
});
지금 dd($value)
내가 변수를 얻을 경우 다시 :
편집
나는 루트 파일에서 진행이 구속력이났습니다. 이 값은 어떻게 채워 집니까? 어디서부터 전달 될 수 있습니까?
당신이 때이 채워져'{지역}'URL을 시도하지만 당신은 당신이하지 않은 주장하고 불가능 routeso 당신은 {슬러그}''타격 이 경로에 지역이 있다는 것입니다. –
나는 그렇다! 질문에 추가하는 것을 잊어 버렸습니다. 'example.com'대신 '{region} .example.com'을 치고 있습니다. 그 중 하나가 먼저 읽혀집니다. 감사합니다 – Norgul
그래서 이것은 올바른 동작입니다. 지역을 매개 변수로 사용하는 경우 컨트롤러 메서드 –