如何在laravel

时间:2017-10-27 05:27:58

标签: php laravel parameters controller routes

有没有办法在laravel资源路由中添加其他参数,以便网址看起来像www.blog.com/blogpost/1www.blog.com/blogpost/1-my-first-blog

blog/{id}blog/{id}-{title}

我知道基本的路线参数,如blog/{id}/{title}

2 个答案:

答案 0 :(得分:2)

希望可以帮到你

在路线档案中:

Route::get('blog/{slug}', 'BlogController@show'); // make sure not conflict with resource routes define

然后是你的BlogController

 public function show($slug)
    {
        $id = explode($slug, '-')[0]; //get id of post

        // your logic
    }

答案 1 :(得分:0)

composer require cviebrock/eloquent-sluggable:^4.3

安装并配置此pakage,然后您只需执行findBySlug($slug)即可。但是你无法通过资源路线实现这一目标。

有关laravel sluggable的更多信息,请访问here

希望这会有所帮助。