是否可以像這樣在 symfony 中聲明路由/somestuff/{query}結構在哪里querystring-with-minus-id000001我希望能夠將第一部分作為控制器中的屬性,并將第二部分作為id。將路由定義為/somestuff/{name}-id{id}不起作用
2 回答

慕村9548890
TA貢獻1884條經驗 獲得超4個贊
我找到了一種在注釋中執行此操作的方法,答案如下:
@Route(
"/somestuff/{name}-id{id}",
methods={"GET"} ,
name="route_name",
defaults={"name"=""},
requirements={"name"=".*?", "id"="\d+"}
)

holdtom
TA貢獻1805條經驗 獲得超10個贊
如果結構總是看起來像這樣
/somestuff/{name}-id{id}
獲取名稱和 ID 的通用方法是
/**
* @Route("/somestuff/{slug}")
*/
public function someAction(Request $request, $slug)
{
$reversed = strrev($slug);
$paramArray = explode('-', $reversed, 1); // limit
$id = strrev($paramArray[0]);
$name = strrev($paramArray[1]);
// rest of code
}
- 2 回答
- 0 關注
- 122 瀏覽
添加回答
舉報
0/150
提交
取消