大家好,我是 Laravel 的新手,目前我正在尝试将一个 slugged url 传递到我的控制器中,但我遇到了问题。
我有一个类别表,所有类别都循环并显示在视图页面(/帖子)上。我在此视图中列出了所有类别,以便当用户单击某个类别时,他们将被带到另一个页面,显示属于该类别的所有帖子(例如,/posts/category/{categoryID})。我知道我可以通过将类别 id 传递到控制器并找到 id 传递回该视图来完成此操作。然而,我正在尝试做一些不同的事情。我希望将类别名称而不是 id 传递给控制器。例如,/posts/category/{类别名称}。但由于有些类别不仅仅是一个词(例如干洗),这对我来说是一个挑战。我之前出于 SEO 目的而使用了 URL(例如 /posts/category/{Str::str(categoryname)}),并从 web.php 文件中创建了一条 get 路由。
现在,我想获取与传入的类别名称相关的所有帖子。问题是类别名称被打乱。
有没有办法从传递到控制器的名称中删除slug(“-”或连字符)?因此,它将返回为与数据库中的名称匹配的“干洗”,而不是“干洗”。
我试图避免将 id 传递给 url。
慕标琳琳