ziedinjsh Posted August 15, 2016 Report Share Posted August 15, 2016 Sveiki.. nonācu pie sarežģijuma kuram nevaru izštukot atrisinājumu.. iespējams, ka jau viegls..Tā tad, ir pamatkategorijas kas ir datubāzē un kurām ir piesaistītas subkategorijas. Citām subkategorijām ir divas va varākas pamatkategorijas (datubāzē tiek saglabāts kā teksts,, pamatkategorijas ID atdalīts ar ","). Nesanāk pie pamatkategorijām izvadīt tās vienādās subkategorijas. php idiorm: $cats = ORM::for_table('k1')->found_many(); foreach($cats as $cat){ $k2 = ORM::for_table('k2')->where_like('k1_id', $cat->id)->find_many(); foreach($k2 as $k){ echo $k->name; } } šādi izvadās subkategorijas. Kā, lai izvada tās subkategorijas kurām ir divi vai vārāki piesaistītie ID?P.S. Paldies jau iepriekš! Quote Link to comment Share on other sites More sharing options...
jurchiks Posted August 15, 2016 Report Share Posted August 15, 2016 (edited) wat, subkategorijas ir atsevišķā tabulā? >Kā, lai izvada tās subkategorijas kurām ir divi vai vārāki piesaistītie ID? Kā to saprast? Tev viena subkategorija ir zem vairākām pamatkategorijām? Edited August 15, 2016 by jurchiks Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 16, 2016 Author Report Share Posted August 16, 2016 (edited) Nu piemēram ir pamatkategorijas #1 Sadzīves tehnika, #2 Dārza tehnika un #3 Meža tehnika. Subkategorijai "Motorzāģis" ir piesaistītītas pamatkategorijas #2 un #3.Kā tad pareizi ir jāveidot DB ar tām kategorijām un subkategorijām utt? Edited August 16, 2016 by ziedinjsh Quote Link to comment Share on other sites More sharing options...
jurchiks Posted August 16, 2016 Report Share Posted August 16, 2016 Eh, ar šitām shared subkategorijām ir vienas galvassāpes... table categories: id, name, is_root (0|1), ... table subcategories: category_id, subcategory_id (abi ir categories.id) Quote Link to comment Share on other sites More sharing options...
Kasspars Posted August 16, 2016 Report Share Posted August 16, 2016 Ciklā taisīt db pieprasījumus ir ļoti slikti! Lietojot orm tā ir pati izplatītākā kļūda. Quote Link to comment Share on other sites More sharing options...
briedis Posted August 16, 2016 Report Share Posted August 16, 2016 ja to tabulu nav ziljons (ir teiksim < 100), tad es ielasītu visus ierakstus uzreiz masīvā un sasortētu kokā jau ar php. Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 16, 2016 Author Report Share Posted August 16, 2016 ja to tabulu nav ziljons (ir teiksim < 100), tad es ielasītu visus ierakstus uzreiz masīvā un sasortētu kokā jau ar php. Kā tas īsti būtu ar ORM? Quote Link to comment Share on other sites More sharing options...
jurchiks Posted August 16, 2016 Report Share Posted August 16, 2016 Tāpat, kā bez, vnk ne ciklā. Quote Link to comment Share on other sites More sharing options...
Plutons Posted August 16, 2016 Report Share Posted August 16, 2016 Neesmu lietpratējs. Nenomētāt lūdzu ar veciem tomātiem. Bet man šķiet ka te idejiski pareizais risinājums būtu atsevišķa tabulā glabāt kategrijas un subkategorijas id. tad arī būtu vieglāk atlasīt info. jo kad prasītu izvadīt subkategorijas kur kategorijas id ir tāds tad arī tās tiktu atgrieztas. Kaut gan nezinot ko īsti autors grib panākt gūti tā spriest. Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 17, 2016 Author Report Share Posted August 17, 2016 Neesmu lietpratējs. Nenomētāt lūdzu ar veciem tomātiem. Bet man šķiet ka te idejiski pareizais risinājums būtu atsevišķa tabulā glabāt kategrijas un subkategorijas id. tad arī būtu vieglāk atlasīt info. jo kad prasītu izvadīt subkategorijas kur kategorijas id ir tāds tad arī tās tiktu atgrieztas. Kaut gan nezinot ko īsti autors grib panākt gūti tā spriest. Tā arī es izdariju :D Ir tabula ar pamatkategorijām, subkategorijām un tabula kur tiek sasaistītas pamatkategorijas id ar subkategorijas id Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 17, 2016 Author Report Share Posted August 17, 2016 Tā tad esmu nonācis līdz šim, bet kā lai es izvadu kategorijas un zem viņa attiecīgās subkategorijas? $k = ORM::for_table('k2')->select('cat_name_lv')->select('sub_name_lv')->inner_join('k_connect', array('k_connect.k2_id', '=', 'k2.id'))->inner_join('k1', array('k1.id', '=', 'k_connect.k1_id'))->find_many(); foreach($k as $item){ } Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 17, 2016 Author Report Share Posted August 17, 2016 Kā tad var veikt datubāzes pieprasījumu NEciklā, ja nav zināms ko pieprasa? Quote Link to comment Share on other sites More sharing options...
jurchiks Posted August 17, 2016 Report Share Posted August 17, 2016 pieprasi visas subkategorijas + mappingus, samapo pirms cikla main_category_id => [subcategory, subcategory...], tad ciklā tikai čeko if isset(mappings[main_category['id']]). Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted August 18, 2016 Author Report Share Posted August 18, 2016 īsti nesapratu Quote Link to comment Share on other sites More sharing options...
jurchiks Posted August 18, 2016 Report Share Posted August 18, 2016 Nu slikti, ko lai saka. Vai tu pats esi mēģinājis domāt / rakstīt kādu kodu, lai iznestu to pieprasījumu ārpus cikla? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.