0 Пользователей и 1 Гость просматривают эту тему.
  • 6 Ответов
  • 1604 Просмотров
*

denism300

  • Захожу иногда
  • 209
  • 5 / 0
Переопределение getItems()
« : 06.12.2016, 12:44:56 »
Понадобилось переопределить стандартный getItems(), сделал это так:
в модели функцию getListQuery() заменил на:
Код: php
public function getMyItems(){
тут код запроса к БД, и дальнейшая обработка данных
return $items;
}

в файле view.html.php
Код: php
public function display($tpl = null) {
        try {
            // Получаем данные из модели.
            $this->items = $this->get('MyItems');
}
}
в Joomla получаю такую ошибку:
Цитировать
Ошибка

SQL=

при этом, код запроса к БД верный - выводил результирующий код с помощью echo $query->dump(); и проверял его в phpMyAdmin
print_r($items); так же возвращает корректный список объектов
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Переопределение getItems()
« Ответ #2 : 06.12.2016, 12:53:30 »
Если нужно переопределить функцию getItems(), то переопределите ее. Зачем вы убрали getListQuery() и добавили getMyItems()? И вообще каков код getMyItems() и что она возвращает?

P.S. Полагаю, что ваш класс наследуется от JModelList(). Это значит, что он может использовать метод getItems() своего родителя, если у него нет собственного. Сделайте ему собственный метод getItems().
« Последнее редактирование: 06.12.2016, 13:37:18 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Re: Переопределение getItems()
« Ответ #3 : 06.12.2016, 13:00:41 »
Если нужно переопределить функцию getItems(), то переопределите ее. Зачем вы убрали getListQuery() и добавили getMyItems()? И вообще каков код getMyItems() и что она возвращает?
О чём и речь - если это свой компонент, то какое-то колесо изобретено :)
*

denism300

  • Захожу иногда
  • 209
  • 5 / 0
Re: Переопределение getItems()
« Ответ #4 : 06.12.2016, 14:13:01 »
В своём компоненте?
да, в своем

пример подсмотрел тут
*

denism300

  • Захожу иногда
  • 209
  • 5 / 0
Re: Переопределение getItems()
« Ответ #5 : 06.12.2016, 14:14:17 »
Если нужно переопределить функцию getItems(), то переопределите ее. Зачем вы убрали getListQuery() и добавили getMyItems()? И вообще каков код getMyItems() и что она возвращает?

P.S. Полагаю, что ваш класс наследуется от JModelList(). Это значит, что он может использовать метод getItems() своего родителя, если у него нет собственного. Сделайте ему собственный метод getItems().
возвращает объект
наследуется от JModelList()
*

denism300

  • Захожу иногда
  • 209
  • 5 / 0
Re: Переопределение getItems()
« Ответ #6 : 06.12.2016, 14:37:32 »
все, разобрался. всем спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Переопределение поля типа list

Автор denism300

Ответов: 8
Просмотров: 2202
Последний ответ 12.10.2016, 23:03:13
от denism300
Переопределение системного layout

Автор AlekVolsk

Ответов: 1
Просмотров: 820
Последний ответ 22.06.2015, 10:36:00
от AlekVolsk