У зачем вам id текущей строки? Настройте UrlManager таким образом чтобы в action приходило значение id и там с ним работайте, по примеру function actionUpdate($id){...}
EVOSandru6: Вы сперва выполнили метод search() и после этого присвоили атрибуты модели, нужно сперва присвоить атрибуты, а потом только выполнять метод
У Вас откуда такая информация? так как проштудировал офиц.документацию ответа не нашел. По идее,если запросы по путям будут отправляться через браузер пользователя, то данные пути могут работать и на локальном сервере, и после авторизации также, как пример протокол oauth.
EVOSandru6: Только в этом методе не цепляется? Может у модели есть метод getId() который перехватывает передачу id, или переопределен магический метод __get() ?
Тут либо behaviors, либо наследование, в своих проектах иногда бывает что контроллеры наследуется от кастомных классов, которые в свою очередь также наследуются от других кастомных классах, этакая лесенка, такого рода наследование не раз выручало в решениях все различных задач. И тут сама структура фреймворка не сколько не меняется
К сожалению не работает
По идее несколько слешей здесь RewriteCond %{REQUEST_URI} /$ [NC] тоже должно отражаться, пробовал (/+) и там и там проставить, не работает, один слеш убирает, больше нет
ColdSpirit: тогда у page в таблице должен быть category_id, и всё на этом, зачем дополнительная таблица ? и связи через through? Дополнительная таблица используется в случае связи когда у page много category и когда у category много page