正如标题中提到的,我正在使用Laravel 5.2,并且我已经设置了TwigBridge,因此我可以使用twig作为我的视图。我只是使用Laravel附带的基本身份验证包。问题是当我使用树枝模板时,出现以下错误:
An exception has been thrown during the rendering of a template ("Session store not set on request.") in "...resources/views/auth/register.twig" at line 17.
这指向{{ old('name') }}
调用的使用。我尝试将其切换到input_old
,因为我认为 TwigBridge 更喜欢这样,但这没有帮助。如果我使用刀片模板,则没有问题。我也没有做任何特别的事情。我只是重命名刀片模板,这样就不会调用它,而是调用我的寄存器树枝模板,因为它使用名称 register
.
旧值是从会话中获取的。要让这些值存储在会话中并取回这些值,您需要应用 'Illuminate'Session'Middleware'StartSession
和 将中间件'Illuminate'View'Middleware'ShareErrorsFromSession
到您的路由中。这两者都是中间件组web
的一部分。
您可以将web
中间件组应用于所有路由(除非您正在创建 API),如下所示:
Route::group(['middleware' => ['web']], function () {
Route::get("login" , "AuthController@getLogin");
//Similarly all other routes here
});