Php 在laravel 5.3中建立链接的正确方法

Php 在laravel 5.3中建立链接的正确方法,php,laravel,blade,laravel-blade,Php,Laravel,Blade,Laravel Blade,我试图建立一个动态链接与查看页面(刀片)与拉维5.3 我的做法是: <a href=" {{ URL::to('articles') }}/{{ $article->id}}/edit">Edit></a> 这将输出正确的url以及我的基本url和其他slug:http://mydomain/articles/23/edit 其中“23”是我文章的id 这是可行的,但我想知道是否有更干净的方法来做到这一点 非常感谢您可以试试这个 <a href

我试图建立一个动态链接与查看页面(刀片)与拉维5.3

我的做法是:

<a href=" {{ URL::to('articles') }}/{{ $article->id}}/edit">Edit></a>  

这将输出正确的url以及我的基本url和其他slug:
http://mydomain/articles/23/edit

其中“23”是我文章的id

这是可行的,但我想知道是否有更干净的方法来做到这一点

非常感谢

您可以试试这个

<a href="{{ url('/articles/edit',$article->id) }}"><i class="fa fa-fw fa-edit"></i></a>

以及您的route.php文件

路由::get('/articles/edit/{art_id}','ArticlesController@edit');

您可以使用

//您的路由文件
URL::get('articles/{articleId}/edit','ArticlesController@edit')->name('articles.edit');
//你的观点

更干净的IMO

我建议使用命名路由

您的routes/web.php文件:

您的刀片模板文件:

<a href=" {{ route('article.edit', ['articleId' => $article->id]) }}">Edit></a>  

您可以在代码中为cleaner使用命名路由

在您的app/Http/routes.php(对于laravel 5、laravel 5.1、laravel 5.2)或app/routes/web.php(对于laravel 5.3)

定义路线

在查看页面(刀片)中使用



使用命名路由的一个好处是,如果将来更改路由的url,则无需更改视图中的href(在您的情况下)

这不是更干净吗?
url::to()
是Laravel 4.2可用的方法。从5.0开始,您可以使用
url()
,以及任何
Facade
类,如
url
;它们都做同样的事情,都是干净的方法。我想你可能对这个相对简单的任务想得太多了。谢谢,它很有效!使用
route::resource('articles','ArticlesController')已填充好路由文件“方法负号不是我的…顺便说一句,我尝试了你的方法,但由于输出等于article.edit/id,所以它失败了,所以不是我要找的,我忘了输入名称()在路由上,所以可能会因为这个问题而失败是的,我的评论是针对那个否决我答案的人的。就像你说的:你需要给路由一个名称来使用route()助手。如果你在路由上没有名称,你可以改为使用url()助手。
Route::get('articles/{articleId}/edit', 'YourController@action')->name('article.edit');
<a href=" {{ route('article.edit', ['articleId' => $article->id]) }}">Edit></a>  
Route::get('articles/{id}/edit',[
             'as'   =>'articles.edit',
             'uses' =>'YourController@yourMethod'
            ]);
<a href="{{ route('articles.edit',$article->id) }}">Edit</a>