Bonjour,

Voila j'aimerais une astuce...

Ce que je veux

Exemple : J'ai deux user, le premier à une description avec marquer " Salut les amis " et le deuxième utilisateur n'a pas définis de description, donc ce que je voudrais c'est afficher " Aucune information " si l'utilisateur n'as pas mis de description.

J'ai déjà une solution en faisant mais le soucis c'est que si je veux faire ça avec 30 valeur je suis obligé de mettre des || est le code deviens vite long.

<?php 
// Information pour une seule valeur
    if(is_null($infos->description){
        return "Aucune informations..."
    } 

    // Maintenant j'imagine avec toutes les valeurs des infos profils : 

    if(is_null($infos->description || is_null($infos->nom) || is_null($infos->prenom)){
        return "Aucune informations..."
    } 
    // le code est vraiment long...

Donc j'aimerais savoir si il y a une fonction ou une astuce pour regler le soucis. Merci à vous en tout cas ! bonne journée !

8 réponses


Alexandre #lbac
Réponse acceptée

Tu peux simplement modifier le getter de ton model

public function getDescriptionAttribute($value)
{
    return is_null($value) ? 'Aucune Information' : $value;
}

Bonsoir.

Donc j'aimerais savoir si il y a une fonction ou une astuce pour regler le soucis.

Oui, une toute simple, forcer l'utilisateur à renseigner les informations lors de l'enregistrement de ses données.

bonjour,

Tu peux mettre une valeur par defaut a la colonne description de ta table user. Comme ça si l'utilisateur remplis le champs lors de son inscription, ça enregistrera cette valeur sinon ça enregistrera la valeur définie par défaut...

Tu peux essayer avec array_map + get_object_vars (vu que tu bosses avec un objet).

quelque chose comme array_map('is_null', get_object_vars($monObjct));

Pas d'autres solutions ? :)

Tu as eu 3 solutions... c'est dejà pas mal !! Les a tu au moins testé ?

Si ça ne te conviens pas dit nous au moins pourquoi tu les rejettes !!

@SquallX +1

Laravel est un Framework, il a donc pleins d'outil dans sa besace. Or, je n'ai pas l'impression que tu sais comment t'en servir. As-tu suivi la formation de @Grafikart ? As-tu potassé l'excellentissime (et claire, ce qui est plutôt rare) documentation ?

@SquallX et ouais je n'y avais pas pensé, putain pas con l'ami ! Merci à toi :D

@betaWeb La formation de Grafikart est une bonne formation, mais j'ai pas suivi spécialement sa formation !

En tout cas merci à vous les gars ! :)

Bonne suite.