Я использую CakePHP 3.1, я пытаюсь создать маршрут, который работает следующим образом
псевдокод
:category/:sub-category/:slug
if(:subcategory doesn’t exist){ treat as :controller/:action }
:category/:controller/:action
:category/:controller
if(:controller doesn’t exist){ treat as action }
:category/:action
if(:action doesn’t exist){ then action is view use as slug }
:category/:slug
if(:slug doesn’t exist){return 404 }
:category/:sub-category/
connect( controller=>article, action=>view, :subcategory, :slug=>’home’
:category/)
connect( controller=>article, action=>view, :subcategory=>none , :slug=>’home’)
И категория будет контролировать тему, которая меняет стили, это я бы добавил в мой ArticlesController.php
Это вообще возможно? Если проверка того, что что-то существует, выходит за рамки маршрутов, я не возражаю против проверки inList. В качестве категории и подкатегории будет фиксированная сумма.
Это сложно для маршрутов? я должен просто сделать это в ArticlesController.php под действием view? и просто сделать
$routes->connect('/:slug', ['controller' => 'articles', 'action' => 'view']);
Задача ещё не решена.
Других решений пока нет …