Zzzzz…. Такое в htm не пишется
это долго было человеку объяснять ))))))))))))
5 )))) скобки на новых строках ))))
Вот она и проблема, со мной можно было либо как с нубом общаться без терминологии либо выкладывать как есть, чтобы вникал :)
ок. Строчку в update.htm <?php $formModel->increment('views'); ?> удаляем.
А нужно ли оно ему? Судя по его вопросу он хочет считать кол-во просмотров страниц. Это можно сделать как через аналитику, так и создать таблицу с логами и отслеживать не ajax запросы в CmsController успешные ответы + BackendController успешные. Единственное, это не просто билдер нужен 🙁
и дальше пишем такой метод: public function update($recordId = null, $context = null) { parent::update($recordId, $context); $this->formFindModelObject($recordId)->increment('views'); }
+, хотел в личку, но по просьбе Михаила в общий 🙂 Лучше так не переопределять) статический анализ будет против, так как родитель не имеет update метода (можно конечно миксануть, но надо ли оно?), а обращение работает через parent::update благодаря магии, которая сложно отслеживается. Сам update метод добавляется бехавиором FormController и является его методом, основной контроллер получает к нему доступ через магию и через абстракцию Extendable. Переопределять лучше используя возможности самой абстракции на прямую: ```public function update($recordId = null, $context = null) { $formController = $this->asExtension('FormController'); $formController->update($recordId, $context); $formController->formGetModel()->increment('views’); }``` Либо в две строки: public function update($recordId = null, $context = null) { $this->asExtension('FormController')->update($recordId, $context); $this->asExtension('FormController')->formGetModel()->increment('views’); }
Обсуждают сегодня