Я пытаюсь настроить компонент symfony / routing в моем проекте ..
Все идет хорошо, но когда я определяю префикс для маршрутов, он выбрасывает исключение для маршрута, не найденное для корневого пути этого префикса.
Например, предположим, у меня есть куча административных маршрутов. Вместо того, чтобы определять ключевое слово «admin» на каждом маршруте, я создал префиксный маршрут для всех этих маршрутов. Таким образом, мой путь к панели инструментов превратился в "/"
из "/admin"
. И теперь он выдает ошибку маршрута не найдено ..
Когда я проверял коллекции маршрутов. Путь к панели инструментов выглядит как "/admin/"
. И это не соответствует REQUEST_URI
Я плохо настраиваю компонент или есть какие-то предостережения, которые мне нужно сделать?
Вот часть RouteProvider
foreach (scanDirectory(ROOT_PATH . "/routes") as $file) {
$subCollection = new RouteCollection();
$filepath = ROOT_PATH . "/routes/" . $file;
$routes = Yaml::parseFile($filepath);
$prefix = "api";
if (array_key_exists("prefix", $routes)){
$prefix = $routes["prefix"];
unset($routes["prefix"]);
}
foreach ($routes as $name => $route) {
$parameters = (new RouteParser($route))->parse();
$subCollection->add(
$name,
new Route(...$parameters)
);
}
$subCollection->addPrefix($prefix);
$subCollection->addOptions([
"trailing_slash_on_root" => false
]);
$collection->addCollection($subCollection);
}