Une histoire d'objet

Par Arnaud Stavrou, il y a 8 ans


Bonjour,

J'ai un soucis pour faire une condition sur un objet.
Je vais essayer de m'expliquer clairement.
J'ai un objet client, qui peut avoir 1 ou n contact, et chaque contact peu appartenir à plusieurs services.
Mais si ce fameu contact qui appartient à plusieurs services, il faut que ce dernier apparaisse dans plusieurs "onglets".

Un morceau de code vaut parfois mieux qu'une longue explication :

@foreach($customer->contacts as $contact) @if($contact->departments) // fameuse condition ou je bloque, pour savoir si je peux l'inscrire dans cette section <div class="fiche"> <a href="#" class="btn invisible pull-right remove" data-toggle="tooltip" data-placement="left" title="Supprimer cette fiche"> <span class="glyphicon glyphicon-remove-sign text-danger"></span> </a> <div class="form-group"> <span class="control-label col-sm-4"span> Nom </span> <div class="col-sm-6"> <div class="form-control text-bold"> {{ $contact->lastName }} </div> </div> </div> <div class="form-group"> <span class="control-label col-sm-4"span> Prénom </span> <div class="col-sm-6"> <div class="form-control text-bold"> {{ $contact->firstName }} </div> </div> </div> ...

Pour info, lorsque que je debugue "$contact->departments", j'obtiens ceci :

Collection {#379 ▼ #items: array:2 [▼ 0 => Department {#382 ▼ #attributes: array:5 [▼ "id" => "3" "name" => "Achat" "slug" => "achat" "created_at" => "2017-07-21 14:00:00" "updated_at" => "2017-07-21 14:00:00" ] #original: array:7 [▶] #relations: array:1 [▼ "pivot" => Pivot {#381 ▼ #attributes: array:2 [▼ "contact_id" => "19" "department_id" => "3" ] } ] } 1 => Department {#383 ▼ #attributes: array:5 [▼ "id" => "1" "name" => "Comptabilité" "slug" => "comptabilite" "created_at" => "2017-07-21 14:00:00" "updated_at" => "2017-07-21 14:00:00" ] #original: array:7 [▶] #relations: array:1 [▼ "pivot" => Pivot {#380 ▼ #attributes: array:2 [▼ "contact_id" => "19" "department_id" => "1" ] } ] } ] }

Donc je voudrai savoir s'il est possible de faire une condition (du même genre qu'un in_array()), où si je me prends la tête pour rien.

En tout cas merci pour vos retours.

Aucune réponse