【发布时间】:2016-06-14 14:14:02
【问题描述】:
我有一个 Laravel 5.2 实例,它利用了仪表板、案例、主页、登录/注销和用户的所有典型开箱即用路由(运行良好)。我现在需要创建一个包含步骤(step1、step2、step3 等)的向导,并且我需要访问会话。我将它们分配给组中间件。
Route::group(['middleware' => 'web'], function () {
Route::get('/', function () {
// Uses Web middleware
});
Route::get('wizard/step1', [
'as' => 'wizard/step1', 'uses' => 'Wizard\WizardController@getStep1']);
Route::get('wizard/step2', [
'as' => 'wizard/step2', 'uses' => 'Wizard\WizardController@getStep2']);
});
但是,当我转到指定路线时,我收到 404 错误。所以 WizardController 如下所示。
namespace App\Http\Controllers\Wizard;
use App\Http\Controllers\Controller;
use App\Http\Requests;
class WizardController extends Controller
{
public function __construct()
{
//$this->middleware('guest');
}
public function getStep1()
{
return view('wizard.step1');
}
}
定义的视图是resources/views/wizard/step1.php。理想情况下,我想重构它,使 Wizard 成为一个单独的组。但是,我目前定义自定义路由的方式似乎没有任何作用。
【问题讨论】:
-
问题出在你的中间件上。您的 WizardController 中有 quest 中间件,而在您的路由器中,您将它们定义为“auth”
-
您想访问什么网址?重要的是要知道......还有什么命名的路线,在那个例子中你没有命名的路线。
-
@lagbox:我正在尝试访问 URL localhost/laravel-project/wizard/step1。我已经添加了命名路线,请看一下。谢谢!
标签: php laravel laravel-5 laravel-routing