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

ingavr

  • Захожу иногда
  • 277
  • 0 / 0
Добрый вечер дамы и господа!
не сочтите за невежество, но уже везде обыскался - не могу найти причину.

Пытаюсь вывести данные из нескольких таблиц.
Создал свои категории. Под них своя таблица.
Есть список элементов, под них своя таблица, пытаюсь в модели вместо id категории выбрать имя категории.

Вот блок кода php:
Код
protected function getListQuery()
    {
        $db = $this->getDbo();
        $query = $db->getQuery(true);
        $user = JFactory::getUser();
        
        $query->select('a.id, petkinds, state, a.name, description, created, created_by, a.alias');
        $query->from('#__pets_profile AS a');
                      
        $query->select('u.name as created_by');
$query->join('LEFT', '#__users AS u ON u.id = a.created_by');
                
        $query->select('p.name AS type');
$query->join('LEFT', '#__pets_profilekinds AS p ON p.id = a.petkinds');
        
        //print_r ($query);
        //exit();
        
        $orderCol = $db->escape($this->getState('list.ordering', 'id'));
        $orderDir = $db->escape($this->getState('list.direction', 'desc'));
        
        $query->order($orderCol. ' '. $orderDir);
        
        return $query;
    }

Поле id автора благополучно меняется на имя автора,

а вот при попытке заменить id категории (petkinds) на имя категории - блок <tbody> становится пустым!
Где может быть допущена ошибка?
Помогите, пожалуйста!
*

ingavr

  • Захожу иногда
  • 277
  • 0 / 0
Re: вывод данных из нескольких таблиц
« Ответ #1 : 01.11.2016, 23:37:27 »
Для пояснения скажу, что в шаблоне вида, массив Items при включении выборки:
Код
$query->select('p.name AS type');
$query->join('LEFT', '#__pets_profilekinds AS p ON p.id = a.petkinds');

Оказывается пустой.
Когда эти строки закомментировать - всё отображается.
*

ingavr

  • Захожу иногда
  • 277
  • 0 / 0
Re: вывод данных из нескольких таблиц
« Ответ #2 : 02.11.2016, 01:42:33 »
массив Items при включении выборки:
Код
$query->select('p.name AS type');
$query->join('LEFT', '#__pets_profilekinds AS p ON p.id = a.petkinds');

Оказывается пустой.
Когда эти строки закомментировать - всё отображается.

Он оказывается не пустой.
Выдаёт ошибку: Invalid argument supplied for foreach() in C:\OpenServer\domains\...views\profiles\tmpl\default.php on line 66

При этом не важно что у меня стоит в рендере там, где должно показываться имя этой категории. хоть пустым оставляю - всё равно ошибка.  :(
*

Филипп Сорокин

  • Сорокин Band
  • 1833
  • 148 / 4
Re: вывод данных из нескольких таблиц
« Ответ #3 : 02.11.2016, 06:28:58 »
Вы неправильно составили запрос. Посмотрите пример в оф. руководстве:
https://docs.joomla.org/Selecting_data_using_JDatabase#Selecting_Records_from_Multiple_Tables
Ставь лайк, если согласен, и делай репост!

  => мои публикации
    => мои работы
      => спектр моих услуг
*

ingavr

  • Захожу иногда
  • 277
  • 0 / 0
Re: вывод данных из нескольких таблиц
« Ответ #4 : 02.11.2016, 14:40:14 »
Вы неправильно составили запрос. Посмотрите пример в оф. руководстве:
https://docs.joomla.org/Selecting_data_using_JDatabase#Selecting_Records_from_Multiple_Tables
Спасибо, по изучаю.
Я, однако, делал по примеру видеоурока, там у него выборка из четырех таблиц и все одинаковым способом (вот таким, как в моём примере) и всё у него работает, а у меня, почему-то нет(
*

SeBun

  • Живу я здесь
  • 3375
  • 214 / 3
  • @SeBun48
Re: вывод данных из нескольких таблиц
« Ответ #5 : 02.11.2016, 15:58:11 »
Мало повторять за кем то действия, надо понимать, что пишешь. Филипп дал ссылку, изучайте. От себя добавлю, что лучше для проверки результата использовать не print_r, а var_dump, так нагляднее.
Оказываю услуги по Joomla | Миграция на Joomla 3.x | Сопровождение | IT-аутсорсинг
*

ingavr

  • Захожу иногда
  • 277
  • 0 / 0
Re: вывод данных из нескольких таблиц
« Ответ #6 : 02.11.2016, 19:44:52 »
Мало повторять за кем то действия, надо понимать, что пишешь. Филипп дал ссылку, изучайте. От себя добавлю, что лучше для проверки результата использовать не print_r, а var_dump, так нагляднее.

Спасибо за совет.
Но, мне казалось, я всё правильно понимаю: что, за чем и почему. Оказывается не всё.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод дополнительных полей Joomla 3.7 в шаблоне статьи

Автор mrN

Ответов: 9
Просмотров: 901
Последний ответ 06.12.2017, 10:28:56
от Mitriy
Вывод модуля только на странице контента

Автор martini

Ответов: 3
Просмотров: 88
Последний ответ 18.11.2017, 19:11:34
от effrit
Вывод последних материалов

Автор mario052

Ответов: 4
Просмотров: 154
Последний ответ 16.11.2017, 15:50:51
от mario052
вывод материалов по меткам!!!

Автор troll2342

Ответов: 6
Просмотров: 222
Последний ответ 13.11.2017, 14:58:05
от Septdir
Вывод исключительно избранных материалов в RSS

Автор alexey711

Ответов: 2
Просмотров: 74
Последний ответ 08.11.2017, 14:30:52
от alexey711