Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony 4 erreur getClient()

    18 janvier 2021 à 17:37:49

    Moi ça me semblait OK vu la contrainte de clé étrangère dans le dump de la base de données, dans la mesure où je doute qu'il y ait eu manipulation avant de le fournir.

    ADD CONSTRAINT `FK_C9E3339BA455ACCF` FOREIGN KEY (`idClient`) REFERENCES `r_client` (`idClient`);

    -
    Edité par Ymox 18 janvier 2021 à 17:38:04

    • Partager sur Facebook
    • Partager sur Twitter
      18 janvier 2021 à 17:53:59

      monkey3d a écrit:

      J'ai un doute : c'et toi qui a fait cette annotation ?

      @ORM\JoinColumn(name="idClient", referencedColumnName="idClient", nullable=false)

      Car si je vois bien dans le dump ce n'est pas idClient mais juste id ...

      Tu pourrais essayer plus simplement  l'annotation :

      @ORM\JoinColumn(nullable=false)

      A+

      en base, la colonne c'est bien idClient



      • Partager sur Facebook
      • Partager sur Twitter
        18 janvier 2021 à 18:01:56

        Pourquoi faire simple quand on peut faire compliqué ... 

        La manipulation sur les noms d'id me semble toujours un truc pour se planter :

        Donc en base c'est idClient et dans ta définition d'entité Client c'est quoi le name : id ou idClient ?

        Un autre truc m'interpelle : un id c'est en général un int(11) et là ta colonne est défini en smallint(6) ?

        Tu pourrais juste montrer ta définition d'entité Client ... pas la peine les getters et setters : c'est juste cette propriété qui me semble intéressante.

        A+

        -
        Edité par monkey3d 18 janvier 2021 à 18:06:02

        • Partager sur Facebook
        • Partager sur Twitter
          18 janvier 2021 à 18:12:52

          monkey3d a écrit:

          Pourquoi faire simple quand on peut faire compliqué ... 

          La manipulation sur les noms d'id me semble toujours un truc pour se planter :

          Donc en base c'est idClient et dans ta définition d'entité Client c'est quoi le name id ou idClient ?

          Tu pourrais juste montrer ta définition d'entité Client ... pas la peine les getters et setters : c'est juste cette propriété qui me semble intéressante.

          A+

          -
          Edité par monkey3d il y a moins de 30s


          c'est pas moi qui est créé ce bundle d'entity mais il y a peu de temps tout marchait nickel..

          voici l'entité Client:

          namespace Tessi\DigiProd\EntitiesBundle\Entity\Ecommerce;
          
          use Doctrine\ORM\Mapping as ORM;
          
          /**
           * @ORM\Table(name="r_client")
           * @ORM\Entity(repositoryClass="Tessi\DigiProd\EntitiesBundle\Repository\Ecommerce\ClientRepository")
           */
          class Client
          {
              /**
               * @ORM\Id()
               * @ORM\GeneratedValue(strategy="IDENTITY")
               * @ORM\Column(name="idClient", type="integer")
               */
              private $id;
          
              /**
               * @var string|null
               *
               * @ORM\Column(name="nomClient", type="text", length=65535, nullable=true)
               */
              private $nom;
          
              /**
               * @var string
               *
               * @ORM\Column(name="rue", type="string", length=35)
               */
              private $rue;
          
              /**
               * @var string
               *
               * @ORM\Column(name="ad1", type="string", length=35)
               */
              private $ad1;
          
              /**
               * @var string
               *
               * @ORM\Column(name="ad2", type="string", length=35)
               */
              private $ad2;
          
              /**
               * @var string
               *
               * @ORM\Column(name="ad3", type="string", length=35)
               */
              private $ad3;
          
              /**
               * @var string
               *
               * @ORM\Column(name="cp", type="string", length=12)
               */
              private $codePostal;
          
              /**
               * @var string
               *
               * @ORM\Column(name="ville", type="string", length=35)
               */
              private $ville;
          
              /**
               * @var string
               *
               * @ORM\Column(name="codePays", type="string", length=3)
               */
              private $codePays;
          
              /**
               * @var string
               *
               * @ORM\Column(name="tel", type="string", length=30)
               */
              private $telephone;
          
              /**
               * @var string
               *
               * @ORM\Column(name="fax", type="string", length=30)
               */
              private $fax;
          
              /**
               * @var string
               *
               * @ORM\Column(name="email", type="string", length=80)
               */
              private $email;
          
              /**
               * @var string
               *
               * @ORM\Column(name="gsm", type="string", length=20)
               */
              private $gsm;
          
              /**
               * @var int|null
               *
               * @ORM\Column(name="idClientMinos", type="integer", length=6, nullable=true)
               */
              private $idClientMinos;



          • Partager sur Facebook
          • Partager sur Twitter
            18 janvier 2021 à 18:38:11

            Je ne t'en veux pas ... ;) c'est toujours délicat de reprendre le travail d'autre.

            Je cherche juste à t'aider et si j'ai pu dépoter avec le fetch ... là je commence à être à court d'idées.

            Ce qui est sûr c'est qu'il y a une modification quelque part. As tu comparer les composer en prod et en dev ?

            La nuit porte (peut-être) conseil pour moi mais peut-être qu'Ymox va trouver la solution.

            A+

            • Partager sur Facebook
            • Partager sur Twitter
              18 janvier 2021 à 18:40:50

              En tout cas merci à tous les 2 de m'aider car là je suis complètement perdue !!

              je comprends pas du tout ce qui s'est passé.. je vais comparer les composer

              • Partager sur Facebook
              • Partager sur Twitter
                18 janvier 2021 à 21:10:06

                SI tu souhaites "comparer les composer", sache que c'est composer.lock qui importe le plus.

                J'ai une piste à lancer avant d'aller à l'horizontale : je vois dans ton dump de la table ecommerce_appli que tu utilises PHP 5.6. Quelle est la version de PHP là où ça ne fonctionne plus ? Sachant que l'ordre de précédence de certains opérateurs a changé avec PHP j'aurais dit 7.1, peut-être 7.2, si le code fonctionnait avant, c'est peut-être ce genre de truc qui pose maintenant problème.

                • Partager sur Facebook
                • Partager sur Twitter
                  19 janvier 2021 à 9:32:37

                  Bon la nuit porte conseil !! J'ai résolu le problème.. et je vais vous décevoir car c'était vraiment tout con !!

                  dans un twig il y avait la liste de toutes les appli et ma base de travail n'était pas à jour par rapport à ma base de prod, du coup j'avais bien une appli sans client !!

                  c'est pour ça que je n'avais pas l'erreur en prod !!

                  En tout cas merci encore de votre aide, j'ai appris des choses !

                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    19 janvier 2021 à 9:59:44

                    Greeeeeeeeeeeeeeeeeeeeeeee !

                    Quand je t'avais demandé de changer ton jeux de données, je croyais que tu avais changé d'appli ???? cf quelques posts ci-dessus ... 

                    Par ailleurs, ce qui est curieux c'est qu'en ayant ajouté le fetch="EAGER" les dump montraient que tu avais bien un client. Je n'ai pas rêvé ...

                    Bref ton explication me convainc qu'à moitié.

                    Mais si cela fonctionne ainsi admettons.

                    Bye

                    • Partager sur Facebook
                    • Partager sur Twitter
                      19 janvier 2021 à 10:08:01

                      monkey3d a écrit:

                      Greeeeeeeeeeeeeeeeeeeeeeee !

                      Quand je t'avais demandé de changer ton jeux de données, je croyais que tu avais changé d'appli ???? cf quelques posts ci-dessus ... 

                      Par ailleurs, ce qui est curieux c'est qu'en ayant ajouté le fetch="EAGER" les dump montraient que tu avais bien un client. Je n'ai pas rêvé ...

                      Bref ton explication me convainc qu'à moitié.

                      Mais si cela fonctionne ainsi admettons.

                      Bye


                      Oui car on avait bien un client pour l'appli mais dans un twig il y avait un menu déroulant qui listant toutes les appli !!! dont une sans client !!!

                      En fait je ne regardais pas dans le bon controller et dans le bon twig !!

                      • Partager sur Facebook
                      • Partager sur Twitter
                        19 janvier 2021 à 10:12:47

                        Explications fumeuses pour moi ... car quand tu nous as fait tes dump il y avait une appli et un client ... 

                        Alors c'est sûr que si d'un côté tu fais un test et que tu nous montres un résultat qui ne correspond pas au test, nous pouvons chercher très très très longtemps.

                        Allez je te laisse. Tu auras appris quelques points à retenir donc celui de tracer et dumper tes prochains problèmes. Et rigueur à améliorer ... 42 messages !

                        Bye bye

                        -
                        Edité par monkey3d 19 janvier 2021 à 10:14:48

                        • Partager sur Facebook
                        • Partager sur Twitter
                          19 janvier 2021 à 10:37:34

                          monkey3d a écrit:

                          Explications fumeuses pour moi ... car quand tu nous as fait tes dump il y avait une appli et un client ... 

                          Alors c'est sûr que si d'un côté tu fais un test et que tu nous montres un résultat qui ne correspond pas au test, nous pouvons chercher très très très longtemps.

                          Allez je te laisse. Tu auras appris quelques points à retenir donc celui de tracer et dumper tes prochains problèmes. Et rigueur à améliorer ... 42 messages !

                          Bye bye

                          -
                          Edité par monkey3d il y a 18 minutes


                          Pourquoi autant de jugements assez durs, comme je l'ai précisé je débute et ce code n'est pas le mien, les twig sont imbriqués les uns dans les autres.. donc je n'avais tout simplement pas vu que ce getClient ne concernait pas le twig principal mais un menu à gauche qui listait toutes les applis !!!

                          et franchement j'ai été contente de trouver de l'aide ici et aussi rapidement, oui cela m'a appris de la rigueur, il faut bien apprendre !! cela m'a aussi permis de voir que les exceptions ne sont pas gérées sur le site ! surtout que normalement Client ne doit pas être null

                          ....

                          • Partager sur Facebook
                          • Partager sur Twitter
                            19 janvier 2021 à 10:46:40

                            T'inquiète je ne dis pas cela méchamment  et je ne t'en veux pas. Je suis sur ce site pour aider gracieusement et parfois aussi me faire plaisir quand je peux rendre service et avoir un remerciement.

                            Nous avons tourné autour du pot car nous n'avions pas les bons inputs.

                            Si tu as appris tant mieux et si tu relèves des améliorations dans le code tant mieux aussi.

                            Bye bye bye (jamais 2 sans 3).

                            • Partager sur Facebook
                            • Partager sur Twitter
                              19 janvier 2021 à 11:08:14

                              On a aussi fait l'erreur de ne pas avoir demandé la pile d'appel complète, on aurait pu voir que ce n'était pas la bonne action montrée/incriminée.

                              • Partager sur Facebook
                              • Partager sur Twitter

                              Symfony 4 erreur getClient()

                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                              • Editeur
                              • Markdown