Форум русской поддержки Joomla!® CMS
06.12.2016, 23:51:19 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

protected function getListQuery()

 (Прочитано 312 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ZJIbIgeHb
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 16



« : 03.09.2015, 13: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
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #1 : 03.09.2015, 16:01:32 »

$query->select( 'a.*, c.title as spiker_title');
Записан
ZJIbIgeHb
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 16



« Ответ #2 : 03.09.2015, 16: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
Живу я здесь
******

Репутация: +168/-3
Offline Offline

Пол: Мужской
Сообщений: 1538


« Ответ #3 : 03.09.2015, 16:21:36 »

Ну а что вы мучаетесь возьмите этот же запрос c джоином и протестируйте в phpMyAdmin. Ошибка означает только то что у вас ошибка в запросе. Можете отловить ошибку даже, если вызов метода getItems обернете в блок try...catch
« Последнее редактирование: 03.09.2015, 16:25:47 от zomby6888 » Записан
ZJIbIgeHb
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 16



« Ответ #4 : 04.09.2015, 10:51:40 »

На сотый раз всё заработало как часы. Хотя тот же код. Думаю по запарке просто один символ был на кирилице написан, других предположений нет.
Тему можно закрыть
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet