2016-12-30 16 views
3

アプリをプレビューすると、Laravel 5.3のアップグレード後にルートが定義されていないというエラーが表示されます。バージョン5.2で動作しました。Laravel 5.3にアップグレード - ルートが定義されていないエラー

Route [admin.properties.index] not defined. (View: /home/ubuntu/workspace/resources/views/layouts/app.blade.php) (View: /home/ubuntu/workspace/resources/views/layouts/app.blade.php) 

このコードはapp.blade.phpからです:

    <li>{{ link_to_route('admin.properties.index', 'Properties') }}</li> 

マイweb.phpファイルは、このあまり余分なルートやコメントのようになります。

<?php 

Route::get('/', function() { 
    return view('welcome'); 
}); 

Route::auth(); 

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

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

Route::group(
    [ 
     'prefix' => 'admin', 
     'namespace' => 'admin', 
     'middleware' => 'admin' 
    ], 
    function() { 

      Route::resource('properties', 'PropertiesController'); 

    } 
); 

これが最初でありますインデックスビューのプロパティコントローラの一部:

namespace App\Http\Controllers\admin; 

use Illuminate\Http\Request; 
use App\Http\Requests; 
use App\Http\Controllers\Controller; 
use App\Property; 
use App\Http\Requests\PropertyRequest; 

class PropertiesController extends Controller 
{ 
    /** 
    * Display a listing of the resource. 
    * 
    * @return \Illuminate\Http\Response 
    */ 
    public function index() 
    { 
     $properties = Property::paginate(15); 
     return view('admin.properties.index')->with('properties', $properties); 
    } 

ヘルパー機能がありませんか?上記のコードで5.2から5.3の構文が変更されましたか? Laravel 5.3で経験した人の助けがあれば大歓迎です。

+0

5.3いくつかのことがdeprected。この[5.2から5.3へのアップグレードガイド]をご覧ください(https://laravel.com/docs/5.3/upgrade#5.2-deprecations) –

答えて

2

構文は変更されませんでしたが、ルートの名前はLaravel 5.2とLaravel 5.3の間で変更されました。

これは私にとっても問題を引き起こしました。 An issue was raisedしばらくしていますが、明らかにこの変更は意図的です。

Laravel 5.3では、ルート名を生成するときにグループの接頭辞の後に.が追加されなくなりました。

5.3で現在のルート名を確認するには、php artisan route:listを実行し、それに従って参照を更新します。

あなたは5.2ルート・ネーミングをエミュレートしたい場合は、末尾の.を含めるようにルートグループのために微調整asプロパティする必要があります。例えば

:Laravelで

Route::group([ 
    'as' => 'admin.', 
    'prefix' => 'admin', 
    'namespace' => 'admin', 
    'middleware' => 'admin' 
], // ... 
+0

大変ありがとうございます。私はこれがうまくいきました。 app.blade.phpでは、私は "admin"を削除しました。そしてroute:listはとても助けになりました。 :) – user2502479

関連する問題