Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Можно ли такое сделать при помощи ORM?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
compozitor
Отправлено: 06 Февраля, 2012 - 21:06:54
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Февр. 2012  


Помог: 0 раз(а)




Делаю сайт на фреймворке KOHANA.
Есть таблица товаров (в даном случае мебель). Товары запакованы в несколько пачек (1, 2 или 3 пачки) - таблица пачек. А вот в пачках находятся детали (таблица деталей) из которых потом собирается мебель.

Как обращаясь к таблице товаров вытянуть пачки и соответствующиее пачкам детали?

Обращаясь к таблице товаров через ORM я без проблем вытягиваю пачки (количество пачек всегда разное). НО как обращаясь к таблице "товар" с промежуточной таблицей пачек вытянуть детали?

Связь такая: товар (1 шт.) -> пачки (3 шт.) -> детали (20шт.)
Поля таблицы "Товар (products)" id, name
Поля таблицы "Пачки (packs)" id, product_id, pachka
Поля таблицы "Ltnfkb (details)" id, pack_id, detal

(Отредактировано автором: 06 Февраля, 2012 - 21:09:29)

 
 Top
Мелкий Супермодератор
Отправлено: 07 Февраля, 2012 - 08:37:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Воспользуйтесь полноценным запросом. Что-то вроде
PHP:
скопировать код в буфер обмена
  1. DB::select('pachka','detal','pack_id')
  2. ->from('packs')
  3. ->join('details')->on('pack_id','=','packs.id')
  4. ->where('product_id','=',$iNeedProductId)
  5. ->execute();


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« CMS и фреймворки »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB