Right way to build a link in laravel 5.3

前端 未结 4 705
逝去的感伤
逝去的感伤 2021-01-03 09:29

Im trying to build a dynamic link with a view page (blade) with Laravel 5.3.

My approach is:



        
相关标签:
4条回答
  • 2021-01-03 09:59

    I recommend to work with named routes!

    Your routes/web.php file:

    Route::get('articles/{articleId}/edit', 'YourController@action')->name('article.edit');
    

    Your Blade-Template file:

    <a href=" {{ route('article.edit', ['articleId' => $article->id]) }}">Edit></a>  
    
    0 讨论(0)
  • 2021-01-03 10:10

    You can try with this

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

    and your route.php file

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

    0 讨论(0)
  • 2021-01-03 10:12

    You can use named routes for cleaner in code

    In your app/Http/routes.php (In case of laravel 5, laravel 5.1, laravel 5.2) or app/routes/web.php (In case of laravel 5.3)

    Define route

    Route::get('articles/{id}/edit',[
                 'as'   =>'articles.edit',
                 'uses' =>'YourController@yourMethod'
                ]);
    

    In Your view page (blade) use

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

    One benefits of using named routes is if you change the url of route in future then you don't need to change the href in view (in your case)

    0 讨论(0)
  • 2021-01-03 10:13

    You can use named routes for this

    // Your route file
    URL::get('articles/{articleId}/edit', 'ArticlesController@edit')->name('articles.edit');
    
    //Your view
    <a href="{{ URL::route('articles.edit', $article->id) }}">Edit</a>
    

    Much more cleaner IMO

    0 讨论(0)
提交回复
热议问题