2016-12-15 2 views
2

私はLaravel 5.3を使用しており、私はすべてのルートに名前を付けました。

私はroute()関数を使い、my $ _GET paramsを含めたいと思います。

これは私が試したものです:配列がへ:今のところ

<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を得ました文字列 変換(表示:....

すべてのパラメータを含める方法はありますか?私はそれらを一つずつリストしたくありません。私は私のコードのエラー備わっていたおかげで

EDIT

は、今ではで動作します:

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

答えて

0

request()->all()['id' => $id, 'slug' => str_slug($name)]は配列であり、あなたはそれを文字列として渡すようにしようとしています。多くのデータがある場合は、POSTメソッドを使用して渡す方が良いでしょう。

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

http_build_query(起動せず?)GETのPARAMATERS文字列に連想配列を回す:

+0

私は自分のコードでエラーが発生しました。私は '[array_merge(...)]'を使って配列の配列を作成しました。私はPOSTのために知っている...しかし、私はルートについて話している場合は、私はGETのパラメータを使用してください。 –

0

安いハックはこれだろう。

関連する問題