Bonjour la communauté,

Je reste perplexe devant une erreur liée au type de paramètre passé à une fonction.

Voici une fonction d'un de mes controllers :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
    /**
     * @Route("/rating/create/response/{id}", name="rating.create.response")
     * @param Request $request
     * @param ObjectManager $manager
     * @return Response
     */
    public function response(Rating $rating, UserRepository $userRepository, Request $request, ObjectManager $manager, \Swift_Mailer $mailer): Response
    {
...
            $message = "A new response to rating is pending approval. Please manage it in the <a href=\"" . $this->generateUrl('backend.rating.toApprove', array(), UrlGeneratorInterface::ABSOLUTE_URL) . "\">dashboard</a>.";
 
            $this->sendPendingApprovalRatingMail($mailer, $userRepository, $message);
...
    }
Cette fonction fait appel à une fonction privée que voici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
    private function sendPendingApprovalRatingMail($mailer, $userRepository, $message)
    { 
 
        $mail = new Mail;  
 
        $sender = $userRepository->findOneBy(array('username' => 'administrator'));
        $receiver = $userRepository->findOneBy(array('username' => 'ratingsAdministrator'));
...
    }
Mon problème est que je reçois cette erreur lorsque la route liée à la première fonction décrite est appelée :

HTTP 500 Internal Server Error
Attempted to call an undefined method named "findOneBy" of class "Swift_Mailer".
Cette erreur est flaguée comme provenant de cette ligne :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
$sender = $userRepository->findOneBy(array('username' => 'administrator'));
Je ne comprends pas du tout la source du problème. Quelqu'un aurait une idée?

Merci d'avance pour votre aide.