Mijn vraag
Momenteel ben ik op mijn werk het Intranet aan het herbouwen. Deze gaat draaien in laravel 5.6/5.7
Dit omdat de huidige verouderd is (draait php 5.3................) dus update is wel een keertje nodig!
Nu heb ik een probleem met het verbinden van 3 tabellen.
contact_fund kan 'f' of 'c' zijn. Doordat deze is gezet weet ik dat relation_id bij een contact of fund hoort. (raar!! ik weet het maar om dit tabel met 2.000 regels om te gooien is veel werk en andere software pakketten kunnen hierdoor kapot gaan)
dit is ook gedaan omdat de ID's van fund en contact het zelfde kunnen zijn..
Nu hoop ik dat iemand weet hoe ik vanuit een relatie een parent mee kan krijgen.. of dat ik dit met een WhereHas dit kan oplossen.
Relevante software en hardware die ik gebruik
Laravel 5.6
php 7.^
Wat ik al gevonden of geprobeerd heb
ooh ik heb heel veel geprobeerd..
Deze komt het dichtstbij! maar haal nog steeds beide op en niet alleen fund of contact..
Weet iemand de oplossing?????? je maakt mij erg blij!! zit al 3 uur te kopstoten...
Momenteel ben ik op mijn werk het Intranet aan het herbouwen. Deze gaat draaien in laravel 5.6/5.7
Dit omdat de huidige verouderd is (draait php 5.3................) dus update is wel een keertje nodig!
Nu heb ik een probleem met het verbinden van 3 tabellen.
fund_id | relation_id | relation_type_id | contact_fund |
---|
contact_fund kan 'f' of 'c' zijn. Doordat deze is gezet weet ik dat relation_id bij een contact of fund hoort. (raar!! ik weet het maar om dit tabel met 2.000 regels om te gooien is veel werk en andere software pakketten kunnen hierdoor kapot gaan)
dit is ook gedaan omdat de ID's van fund en contact het zelfde kunnen zijn..
Nu hoop ik dat iemand weet hoe ik vanuit een relatie een parent mee kan krijgen.. of dat ik dit met een WhereHas dit kan oplossen.
Relevante software en hardware die ik gebruik
Laravel 5.6
php 7.^
Wat ik al gevonden of geprobeerd heb
ooh ik heb heel veel geprobeerd..
PHP:
1
2
3
4
5
6
7
8
9
| $view->relations = FundRelationXref::with('relationType', 'contacts', 'funds') ->where('fund_id', '=', $id) ->whereHas('contacts', function ($c) { $c->with('contacts'); $c->where('contact_fund', '=', 'c'); $c->where('status', 1); }, '=', 1) ->get() ->toArray(); |
PHP:
1
2
3
4
5
6
7
8
9
10
11
| $view->relations = FundRelationXref::whereHas('funds', function ($f) use ($id) { [left][center][right][left][left][left]$f->where('fund_id', '=', $id); $f->where('contact_fund', '=', 'f'); }, '=', 1) ->orWhereHas('contacts', function ($c) { $c->where('contact_fund', '=', 'c'); }, '=', 1) ->where('fund_id', $id) ->with('contacts', 'funds', 'relationType') ->get() ->toArray(); |
Deze komt het dichtstbij! maar haal nog steeds beide op en niet alleen fund of contact..
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| $view->relations = FundRelationXref::with('relationType', 'contacts', 'funds') ->where('fund_id', '=', $id) ->whereHas('contacts', function ($c) { $c->with('contacts'); $c->where('contact_fund', '=', 'f'); $c->where('status', 1); }, '=', 1) ->whereHas('funds', function ($c) { $c->with('contacts'); $c->where('contact_fund', '=', 'c'); $c->where('status', 1); }, '=', 1) ->get() ->toArray(); |
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
| array:1 [▼ 0 => array:12 [▼ "ID" => 971 "fund_id" => "1029" "relation_id" => "1039" "relation_type_id" => "11" "contact_fund" => "f" "contacts" => array:1 [▶] "funds" => array:1 [▶] "relation_type" => array:6 [▶] ] ] |
Weet iemand de oplossing?????? je maakt mij erg blij!! zit al 3 uur te kopstoten...



[ Voor 0% gewijzigd door Groax op 21-08-2018 11:21 . Reden: typo ]