2016-01-13 77 views
0

我有一些使用as參數的命名路線。似乎在5.1至正常工作,但是當我在5.2使用相同的包,它拋出一個錯誤:命名的路線在Laravel 5.2中不工作?

ErrorException in UrlGenerator.php line 307: 
Route [/blog] not defined. (View: ...) 

我已經清除了所有的緩存無濟於事。

php artisan cache:clear 
php artisan view:clear 
php artisan route:clear 
php artisan config:clear 

有傾倒:

composer dump-autoload 

但仍然無法正常工作。當我做了php artisan route:list它似乎確定對我說:

+--------+----------+------------------+------------+----------------------------------------------------------------+------------+ 
| Domain | Method | URI    | Name  | Action               | Middleware | 
+--------+----------+------------------+------------+----------------------------------------------------------------+------------+ 
|  | GET|HEAD | blog    | blog  | ...               |   | 
|  | GET|HEAD | blog/feed  | feed  | ...               |   | 

編輯:要澄清一兩件事。嘗試生成路線時,我確定使用route('blog')。它也在Laravel 5.1工作得很好。更不用說它與所有的命名路線,而不僅僅是我提出的特定例子中的blog

回答

1

您的錯誤消息是說您嘗試訪問名爲「/ blog」的路線,但是,您的路線名爲「blog」(無斜槓)。某處您有代碼route('/blog'),並且這導致您的錯誤;它應該是route('blog')

+0

我絕對使用'route('blog')'而且它在Laravel 5.1中工作得很好。更不用說它與所有命名路線不只是'博客'。 – Rob

+0

其實你是對的,我在找錯地方@patricus,thx。 – Rob

0

我與Laravel 5.2有同樣的問題。我有3個簡單的路線定義。

Route::get('/', function() { 
    if (!empty(Auth::user())) { 
     return view('auth.zipline'); 
    } else { 
     return view('no_auth.login'); 
    } 
}); 

Route::get('/login', function() { 
    return view('no_auth.login'); 
}); 

Route::get('/pricing', function() { 
    return view('no_auth.pricing'); 
}); 

存在no_auth.login視圖(說'登錄'的文本)。 存在no_auth.pricing視圖(文字說'定價')

/路徑工作。我得到登錄視圖。

其他路線都不起作用。直接/登錄或/定價給我404錯誤。 mod_rewrite在服務器上啓用,我使用默認的Laravel 5.2 .htaccess文件。

PHP工匠路線:列表看起來像(注意丟失的前導斜槓):

+--------+----------+---------+------+---------+------------+ 
| Domain | Method | URI  | Name | Action | Middleware | 
+--------+----------+---------+------+---------+------------+ 
|  | GET|HEAD |/  |  | Closure |   | 
|  | GET|HEAD | login |  | Closure |   | 
|  | GET|HEAD | pricing |  | Closure |   | 
+--------+----------+---------+------+---------+------------+ 

路由文件肯定有/登錄和/定價領先的斜線。我已經運行 php工匠的路線:清除