protected function getListQuery()

  • 4 Ответов
  • 501 Просмотров

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

*

ZJIbIgeHb

  • **
  • 17
  • + 0 -
protected function getListQuery()
« : 03.09.2015, 14:25:49 »
Ребят, мучаюсь второй день. Пытаюсь присоединить таблицу в моделе компонента, но что-то идёт не так.
Есть файл представления который выводит:
Код
	<?php foreach ( $this->items as $item ): ?>
<?php echo $item->title; ?>">
<?php endforeach; ?>
В Файле модели меняю рабочий код
Код
	protected function getListQuery()
{
$query = $this->getDbo()->getQuery( true );
$query->select( '*' )->from( '#__h_event' )->where( 'published=1' );
return $query;
}
На
Код
	protected function getListQuery()
{
$query = $this->getDbo()->getQuery( true );
                $query->select( '`a`.`*`, `c`.`title` as `spiker_title`');
$query->from('#__h_event as a');
$query->leftJoin('#__h_spiker as c on a.spiker=c.id');
$query->where( 'published=1' );

return $query;
}
Таблицы созданы, пытаюсь переписать последний код уже всеми возможными способами не работает.
Выдает вот такую ошибку, но я так понимаю это потому что массив в модели не формируется:
Warning: Invalid argument supplied for foreach()

*

zomby6888

  • ******
  • 1484
  • + 167 -
Re: protected function getListQuery()
« Ответ #1 : 03.09.2015, 17:01:32 »
$query->select( 'a.*, c.title as spiker_title');
интернет-блог: http://websiteprog.ru

*

ZJIbIgeHb

  • **
  • 17
  • + 0 -
Re: protected function getListQuery()
« Ответ #2 : 03.09.2015, 17:16:35 »
$query->select( 'a.*, c.title as spiker_title');
К сожалению не помогло. Ещё валиться:
Код
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in ...... /libraries/joomla/database/database/mysqli.php on line 263
Юзал поиск по этой ошибке всё сводиться к нехватке места или не созданных таблицах. Но таблицы есть по отдельности я из них вывожу всё без проблем и с местом проблем нет. Тем более, что я на двух разных хостингах пробовал.

*

zomby6888

  • ******
  • 1484
  • + 167 -
Re: protected function getListQuery()
« Ответ #3 : 03.09.2015, 17:21:36 »
Ну а что вы мучаетесь возьмите этот же запрос c джоином и протестируйте в phpMyAdmin. Ошибка означает только то что у вас ошибка в запросе. Можете отловить ошибку даже, если вызов метода getItems обернете в блок try...catch
« Последнее редактирование: 03.09.2015, 17:25:47 от zomby6888 »
интернет-блог: http://websiteprog.ru

*

ZJIbIgeHb

  • **
  • 17
  • + 0 -
Re: protected function getListQuery()
« Ответ #4 : 04.09.2015, 11:51:40 »
На сотый раз всё заработало как часы. Хотя тот же код. Думаю по запарке просто один символ был на кирилице написан, других предположений нет.
Тему можно закрыть