Sto utilizzando il tratto ResetsPasswords di laravel per implementare la reimpostazione della password. Quello che mi piacerebbe ottenere è inviare l'e-mail usando la coda. Scavando attraverso il codice che ho trovato la linea di seguito nella funzione Postemail():Come inviare il link per reimpostare la password via e-mail utilizzando la coda in laravel 5
$response = Password::sendResetLink($request->only('email'), function (Message $message) {
$message->subject($this->getEmailSubject());
});
Scavando ulteriormente noto che la funzione sendResetLink() è implementato in una classe PasswordBroker che a sua volta chiama la funzione emailResetLink(). Funzione emailResetLink restituisce il seguente:
return $this->mailer->send($view, compact('token', 'user'), function ($m) use ($user, $token, $callback) {
$m->to($user->getEmailForPasswordReset());
cui posso semplicemente cambiare mailer->send
-mailer->queue
. È un modo migliore di farlo senza modificare questo file non di progetto?
Grazie @ marcus.ramsden per il tuo contributo. Ho seguito il tuo approccio ma non riesco a capire perché non funzioni. Non ho alcun errore. Sembra che stia ancora chiamando 'emailResetLink' della classe genitrice invece di quella sovrascritta. –
Scusate il mio errore nell'esempio, nella parte di registrazione del vostro fornitore di servizi che dovrebbe essere '$ this-> app-> singleton' invece di' $ this-> app-> bind'.Anche il fornitore di servizi di base che registra le cose è un [fornitore differito] (http://laravel.com/docs/master/providers#deferred-providers). Otterrò le cose aggiornate tra un momento. –
Grazie ancora per il tuo contributo. '$ this-> app-> singleton' non sta facendo il trucco neanche. Ancora chiamando il metodo genitore. –