2017-11-11 243 views
0

是否存在路由長度要求? 例如: 我發現這對Stacko:Symfony路由長度限制

/** 
* @Route("/{shortUrl}", requirements={„shortUrl" : "[a-zA-Z0-9]{8}"}) 
* @method({"GET"}) 
*/ 

我希望{8}它規定只有被稱爲當「SHORTURL」剛好8個字符長,但不起作用。

的理解:
我建了一個網址縮短服務,現在我面臨這個問題:
路由上面,當用戶輸入URL別名我的網站爲他創建並重定向他,這個作品被調用如預期。 該別名由小寫字母和數字(隨機)組成。
但是,當他想要查看他的個人資料(localhost/profile)時,上面的路由被調用而不是配置文件路由,儘管「profile」部分只有7個字符長。

回答

0

試試這個

/** 
* @Route("/{shortUrl}", requirements={"shortLink" : "^[a-zA-Z0-9]{8}$"}) 
* @method({"GET"}) 
*/ 

您需要使用正則表達式符號^和$說「首先」和「結尾」。同樣在您的正則表達式模式中,您忘記了UpperCase匹配中A和Z之間的負號。

+0

謝謝!完美的作品!我相應地改變了我的帖子。我upvoted,但它不算數,因爲我在這裏是新的。 – Moses

+0

如果您想稍後再回來並投票,則沒有問題。 – Mz1907