就我而言,Laravel 5.6中url()和route()之间有什么区别,下面给出了两个URI:
<a href=" {{ route('/article/create') }}" >Create post 1 </a>
和
<a href=" {{ url('/article/create') }}" >Create post 2 </a>
我在web.php中定义了它们,如下所示:
Route::post('/article/create','ArticleController@create');
当我点击“创建帖子1”时,我收到以下错误:
Route [/article/create] not defined.
我不熟悉Laravel(只是基本的)所以如果问题有点明显,我很抱歉。
答案 0 :(得分:8)
假设您使用相同的网址10位置。一段时间后,你想要更改你的网址,然后你必须在10个地方更改你的网址,但如果你正在使用路由,那么你可以在一个地方修改你的网址只是路由文件:
Route::post('/student/create','ArticleController@create')->name('student.create');
Now, url() will use path of route;
url('/student/create');
and route() will use name of route
route('student.create');
答案 1 :(得分:4)
定义名称为
的路线Route::post('/article/create','ArticleController@create')->name('article.create');
现在,url()
将使用路径路径;
url('/article/create');
和route()
将使用路线名称
route('article.create');
答案 2 :(得分:-1)
所以首先我想在Laravel 5.6中写URL和Route之间的区别 在laravel中,网址是链接网站的不同页面,例如,
我想进入我网站上的创建页面,所以网址就是这个
<a href=" {{ url('/article/create') }}" >Create post 2 </a>
第二个是Route,因此在laravel Route中接受Url,并检查Url是否正确并给出结果
Route::get('/article/create', 'createController@create');
,如果您想使用Url's over Route和Route over Url's 像这样
<a href=" {{ route('/article/create') }}" >Create post 1 </a>
<a href=" {{ url('/article/create') }}" >Create post 2 </a>
您可以使用别名路由名称
Route::get('/article/create', 'createController@create')->name('create');