Заказ маршрута в Symfony4 - PullRequest
0 голосов
/ 11 марта 2019

У меня есть маршрут с 1 слагом, 2 int (категория, страница):

@Route("/articles-{categorySlug}-{category}-{page}", name="article.list.category", defaults={"page": 1}, requirements={"category": "\d+", "page": "\d+", "categorySlug": "[0-9a-zA-Z\/\-]*"})

Хорошая работа:

URL: / Articles-CategorySlug-5
Результат: категорияSlug: категорияSlug, категория: 5, страница: 1 (по умолчанию)

Плохая работа (чтобы исправить):

URL: / Articles-CategorySlug-5-2
Результат: категорияSlug: категорияSlug, категория: 2 (должно быть 5), страница: 1 (должно быть 2)

Как я могу это исправить?

1 Ответ

1 голос
/ 11 марта 2019

Это потому, что регулярное выражение слаг-категории является жадным. Добавьте трейлинг ?, чтобы сделать его неприличным:

@Route("/articles-{categorySlug}-{category}-{page}", name="article.list.category", defaults={"page": 1}, requirements={"category": "\d+", "page": "\d+", "categorySlug": "[0-9a-zA-Z\/\-]*?"})
...