Я планирую переписать свой сайт в CakePHP и, потратив целую неделю на его изучение, я все еще не уверен, как сделать хорошую настраиваемую маршрутизацию в CakePHP.
Это то, что я хочу:
- Сохраните текущую структуру URL в www.domain.tld / en / dragons.html или используйте www.domain.tld / en / dragons, но не www.domain.tld / en / node/dragons.html.А также сможете использовать контроллеры с похожей структурой пути.
На всем сайте около 100 статических страниц.Я прочитал многоязычную маршрутизацию и думаю, что смогу это сделать.Я также могу сделать / en / * или / en /: slug route через PagesControler или самописный NodesController.
Моя проблема в том, что я хотел бы иметь возможность смешивать и сопоставлять URL с контроллерами и безтак что на самом деле я хочу, чтобы он проверял, является ли a: slug частью списка слагов, все равно должна быть возможность использовать этот URL с контроллером.
Я создал маршруты для обоих / en/ contact и / en /: slugid, но кажется, что все запросы были направлены на мой NodesController, даже когда я прямо сказал, что / en / contact должен быть направлен на ContactsController.
Как я могу поручить Cakephp сохранить мою текущую диктаторскую структуру?Я прочитал часть маршрутов в книге Cakephp, но она была очень короткой и заставила меня немного сомневаться в возможности такой маршрутизации.При необходимости я просто напишу php-код, который печатает все маршруты для всех слагов, так что я все еще могу писать маршруты контроллера с аналогичной структурой пути.