Bonjour!
J'ai mis en place une méthode put&patch pour mes Users.
Le soucis c'est que je n'arrive pas à encoder le password avec cette méthode.
Lorsqu'il est modifié, il apparait en dur dans la base de données...
Est-ce que quelqu'un aurait une idée?
Merci d'avance!
      
      
    J'ai mis en place une méthode put&patch pour mes Users.
Le soucis c'est que je n'arrive pas à encoder le password avec cette méthode.
Lorsqu'il est modifié, il apparait en dur dans la base de données...
    /**
     * Edit user PUT
     * 
     * @Route("/api/users/{id<\d+>}", name="api_users_put", methods={"PUT", "PATCH"})
     */
    public function putAndPatch(User $user = null, EntityManagerInterface $em, SerializerInterface $serializer, Request $request, ValidatorInterface $validator)
    {
        //404
        if($user === null)
        {
            return $this->json(["error" => "Utilisateur non trouvé."], Response::HTTP_NOT_FOUND);
        }
        $jsonContent = $request->getContent();
        // Deserializes given data from front in the User object to modify
        $userMod = $serializer->deserialize($jsonContent, User::class, 'json', [AbstractNormalizer::OBJECT_TO_POPULATE => $user]);
        
        // Deserialized entity validation
        
        $errors = $validator->validate($user);
        // Errors generation with 422 status
        if(count($errors) > 0)
        {
            return $this->json($this->generateErrors($errors), Response::HTTP_UNPROCESSABLE_ENTITY);
        }
        $em->flush();
        return $this->json(["message" => "Informations modifiées."], Response::HTTP_OK);
    }
Est-ce que quelqu'un aurait une idée?
Merci d'avance!