2016-12-15 5 views
2

저는 Laravel 5.3을 사용하며 모든 경로의 이름을 지정했습니다.

route() 함수를 사용하고 my $ _GET 매개 변수를 포함하고 싶습니다.

내가 무엇을 시도했다입니다 : 들어

<a href="{{ route('myRoute', ['id' => $id, 'slug' => str_slug($name)], request()->all()]) }}"> 

또는

<a href="{{ route('myRoute', [array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())]) }}"> 

을 지금은 UrlGenerator.php 라인 (377)이 오류

ErrorException를 가지고 : 배열하기 문자열 변환 (보기 : ...

모든 매개 변수를 포함 할 수있는 방법이 있습니까? 나는 그들을 하나씩 나열하고 싶지 않다.

<a href="{{ route('myRoute', array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())) }}"> 

답변

0

request()->all()['id' => $id, 'slug' => str_slug($name)]가 배열이고, 당신은 문자열로 전달하려는 : 감사

편집

내가, 내 코드에서 오류가 엉했다가 지금은 작동합니다. 많은 데이터가있는 경우 POST 메서드를 사용하여 전달하는 것이 좋습니다.

+0

내 코드에 오류가있어'[array_merge (...)] '를 사용하여 배열 배열을 만들었습니다. 이제 작동합니다. 나는 POST에 대해 알고 있지만, 확실히 경로에 대해 말하면 GET 매개 변수를 사용합니다. –

0

싸구려 해킹이 될 것입니다 :

<a href="{{ route('myRoute') . '?' . http_build_query(array_merge(['id' => $id, 'slug' => str_slug($name)], request()->all())) }}"> 

http_build_query는 GET의 PARAMATERS 문자열에 연관 배열집니다 (시작하지 않고 있습니까?).

관련 문제