0
我不知所措。我正在將應用程序升級到Laravel 5.4,但在路上(5.2.45),我發現有幾條路線發生了奇怪的事情。我在routes.php
有3 Route::controller()
調用,並且我已將其全部轉換爲顯式路由,因爲::controller()
已被刪除。現在來自::controller()
調用之一的新路由工作正常,來自其他兩個路由的路由不正確,報告操作未找到。作爲閉包出現在「工匠路線:列表」中的控制器操作
綜觀例子,這裏有一個正在工作:
\Route::get('account/edit', array('as'=>'account.edit', 'uses'=>'[email protected]'));
,這裏是一個不是:
\Route::get('recent/clear', array('as'=>'recent.clear', 'use'=>'[email protected]'));
爲了完整起見,這裏都是適用的控制器部分
class AccountController extends Controller {
public function getEdit()
{
$roles = Role::getSelectList();
$districts = District::getSelectList();
return \View::make('accountedit', array('editUser' => \Auth::user(), 'roles'=>$roles, 'districts'=>$districts));
}
}
class RecentController extends Controller {
public function getClear()
{
\Session::forget('recent');
return \Redirect::to('/main')->with(array('alerts'=>array(ErrorHelper::alert('success','Success','The Recent list has been cleared.'))));
}
}
最奇怪的是最直接的跡象是當我運行artisan route:list
。下面是從結果兩個適用線:
| Method | URI | Name | Action |
+-----------+---------------+---------------------------------+-------------------------------------------------+
| GET|HEAD | account/edit | account.edit | App\Http\Controllers\[email protected] |
| GET|HEAD | recent/clear | recent.clear | Closure |
我不知道爲什麼recent.clear
被顯示爲一個封閉。任何想法是什麼錯? FWIW,我在兩個控制器上都有相同的命名空間,這兩個控制器都在Http \ Controllers目錄中。