我正在使用与laravel中默认身份验证系统提供的app.blade.php不同的app.blade.php。在我创建的那个中,我需要每次都给出一个变量,以便它显示我们在代码中的位置。例如,对于我的路线,我使用:
Route::get('/', ['as' => 'home', function () {
$position = ['main_title'=>'Home','second_title'=>'',
'urls'=>
[
['name'=>'home','url'=>'#']
]
];
return view('home')->with('position',$position);
}]);
在我的app.blade.php中,我可以使用这个$位置来打印主标题等。
现在当我尝试访问登录时出现问题,因为$ position未设置。如何在Laravel中实现这一点,以便auth系统将使用我的新刀片系统?
感谢。
答案 0 :(得分:1)
身份验证视图使用app.blade.php
中的布局文件resources/views/layouts
。这是由所有视图顶部的代码@extends('layouts.app')
完成的,这意味着auth视图扩展了此布局。
要更改所有身份验证视图中的布局,请使用您创建的新布局文件手动替换顶部的@extends('layouts.app')
部分。例如,如果您的新自定义布局文件为resources/views/base.blade.php
,则将默认值扩展为@extends('base')
。
答案 1 :(得分:0)
如果要在不同(所有)视图中使用变量,可以使用ViewComposer