\Nette\Database\Context many to many self join
- David Matějka
- Moderator | 6445
- cetl sis dokumentaci? https://doc.nette.org/…ase/explorer#…
- zkousel si neco vytvorit?
- tino415
- Člen | 46
Som relatívne nováčik v nette a jedine čo ma napadlo je
<?php
$city = $hotel
->related('item_parent', 'item_id')
->ref('item', 'parent_id');
?>
Len mi ešte nezbehlo ani to prvé related resp ref.
ref mi vráti 0 záznamov a related mi vypíše:
Cannot read an undeclared column ‚id‘.
Editoval tino415 (4. 8. 2015 11:05)
- tino415
- Člen | 46
Štrutktúra je uvedená vyššie, mám tabuľku item ktorá má id a name a druhú tabuľku item_parent ktorá ma item_id (id z tabuľky item) parent_id (id z tabuľky item). Som na prvku item a potrebujem získať jeho prvého rodiča,
SELECT * FROM item AS it1
INNER JOIN item_parent AS map ON it1.id = map.item_id
INNER JOIN item AS it2 ON it2.id = map.parent_id
LIMIT 1;
Teraz som to vyriešil cez where, pričom robím dva krát výber HAS_MANY…
- Azathoth
- Člen | 495
@tino415 koukám, že tam máš parenta. Jestli z toho plánuješ
dělat stromovou strukturu, pak možná bude lepší použít closure table
ale možná to není tvůj případ, nejsem si jistý