Php larvel:Route::get(';login';,';IndexController@Login)->;姓名(';登录名';);
我是新来的。我已经使用下面的行作为登录页面Php larvel:Route::get(';login';,';IndexController@Login)->;姓名(';登录名';);,php,laravel,Php,Laravel,我是新来的。我已经使用下面的行作为登录页面 Route::get('login','IndexController@Login')->name('login'); 这里->name('login')是使用每条路线所必需的吗?这是什么意思 任何想法请分享。这不是每个路由所必需的,它允许您命名路由/控制器操作,以便您以后参考 这允许您执行诸如在重定向中引用路由之类的操作,这在路由的URL结构发生更改时非常有用,您的代码不会中断,因为它引用的是名称而不是路由本身 // Generating U
Route::get('login','IndexController@Login')->name('login');
这里->name('login')
是使用每条路线所必需的吗?这是什么意思
任何想法请分享。这不是每个路由所必需的,它允许您命名路由/控制器操作,以便您以后参考 这允许您执行诸如在重定向中引用路由之类的操作,这在路由的URL结构发生更改时非常有用,您的代码不会中断,因为它引用的是名称而不是路由本身
// Generating URLs...
$url = route('profile');
// Generating Redirects...
return redirect()->route('profile');
在中找到更多有关命名路由的信息,您可以在刀片文件中编写类似的内容
<a href="{{ route('login') }}">Login</a>
而不是
<a href="/login">Login</a>
因此,如果URL在某个时刻发生更改,那么如果您使用route helper定义它,则不必更改刀片文件中的任何内容。您可以以不同的方式使用路由,并具有不同的优势 长,没有
->name('login')
:
缩写为->name('login')
:
嗯,您可以跳过->名称(“登录”)
。但是如果你的表单需要指定URL
例如,
路线是,
Route::get('login','IndexController@Login');
但是,如果您在不同的视图中有4-5个登录表单用于不同的目的,并且将来您决定将登录
URL重命名为登录
,该怎么办
那么,您必须访问每个表单并更改它们的action
属性值
相反,如果您使用->name('login')
,那么您的表单将
路线是,
Route::get('login','IndexController@Login');
Route::get('login','IndexController@Login')->name('login')代码>
现在,如果您决定将路由文件中的url从login
更改为signin
,那么您只需将其更改,laravel将负责表单的url
像这样,
Route::get('signin','IndexController@Login')->name('login')代码>
就这样!您不必担心表单操作值。不,这不是必需的,它只是传统URL的一种替代方法。请看这里,谢谢Sohel,但我注意到@if(Route::has('login'))在没有该名称的情况下无法工作。谢谢这个参考链接。我得到了这个概念。使用canRequest::is('/login')
代替谢谢,超级示例