我想在 Symfony 4.4 路由中用“-”替换空格(%20)并删除我的 {slug} 的第一个大写字母。
例如:
RecipeController.php
/**
* @Route("/receta/{title}", name="recipe_show", methods={"GET"})
*/
public function show(Recipe $recipe): Response
{
return $this->render('recipe/show/show.html.twig', [
'recipe' => $recipe,
]);
}
现在我的路线显示了。
https://localhost:8000/receta/Pollo%20agridulce%20chino
但我想展示
https://localhost:8000/receta/pollo-agridulce-chino
在我的 BD 中我保存了“Pollo agridulce chino”
我该怎么做?
通常这对于数据库中的“slug”字段效果最好,您可以将其设置为“/receta/{slug}”和数据库“slug”字段“pollo-agridulce-chino”。 您可以手动添加“slug”或使用类似的东西
strtolower(str_replace(' ', '-','Pollo agridulce chino'))
当您将标题保存在数据库中时