2016-03-30 10 views
0

laravelにおける経路誤差へのリンク:私はこのルートを有する5

<p>{{ link_to_route('users.create', 'Add new user') }}</p> 

エラーメッセージ:

Route [users.create]が定義されていません。 (閲覧: C:\ xamppの\ htdocsに\ larapro \ユーザー\ index.blade.php \リソース\ビュー)あなたが動作するようにあなたのビューで言及したルートを希望する場合は、このようにそれを追加することができ

答えて

1

。それはRoute::resource()はあなたのインデックス、作成、編集、保存、ショー、更新を与えることに留意すべきであるが、

Route::get('users/create', ['as' => 'users.create', 'uses' =>'[email protected]']); 

、ルートを削除します。したがって、ルートを2度宣言する冗長コードを記述しています。

それが効果的にこの上Route::resource

参照Laravelのマニュアルを参照して、以前に作成したルートを交換していること:あなたのプロジェクトフォルダ内php artisan route:listを実行する場合 ​​

あなたがのために作成したルートのリストが表示されますあなたが上記で宣言したリソース 'users'。

また、Route :: resourceが処理する必要があるため、宣言した2番目のルートを削除してください。

+1

ok。出来た。なぜなら、この '{{link_to_route( 'users.edit'、 'Edit'、array($ user-> id)、array( 'class' => 'btn btn-info'))}} ' – micky

+0

答えを更新しました。 – Anderscc

1

この行は冗長であり、削除する必要があります。

Route::get('/users/create', '[email protected]'); 

  1. Route::resource()はすでにそれをちょうどこのようなルートを登録し、自動的に名...ので、それはあなたが記述問題の原因users.create
  2. /users/createのルートを登録すると、は、そのURLの既存のルートを新しいルートに置き換えます。
  3. 新しいルートに名前が付けられていません。
  4. 新しいルートが既存のルート(users.createという名前)を置き換えるため、その名前のルートはありません。

リンクを生成しようとすると、Route [users.create] not defined例外が発生します。

関連する問題