我需要在我的应用中发送电子邮件,这是我的代码:
if( $agent->save() )
{
//Preparo la mail da inviare con i dati di login
$data = [
'nome' => $input['nome'],
'cognome' => $input['cognome'],
'email' => $input['email'],
'password' => $input['password']
];
//ATTENZIONE
//Questo è da rimuovere in produzione, finge di inviare la mail
Mail::pretend();
//Recuero il template e passo alla funzione i dati
Mail::send('emails.agents.registration', $data, function($message) use ($data)
{
$message->to( $data['email'], $data['nome'].' '.$data['cognome'] )->subject('Benvenuto!');
});
return Redirect::action('admin.agents.index')->with('positive_flash_message', 'Agente inserito correttamente.');
}
正如您所看到的,我使用Mail ::假装以避免在开发过程中发送电子邮件,问题是我每次尝试发送电子邮件时都会收到此错误:
Undefined property: Illuminate\Mail\Message::$email (View: /var/www/progetti/app/views/emails/agents/registration.blade.php)
这是我的刀片视图:
Email: {{ $message->email }}
Password: {{ $message->password }}
$ message有什么问题?
答案 0 :(得分:2)
您在视图中调用了错误的值。它应该是:
Email: {{ $email }}
Password: {{ $password }}
作为一个侧面点 - 您不应该在代码中调用Mail::pretend()
。您应该将其配置为环境设置的一部分,以便在开发模式下,邮件假装设置为true,并且在生产中将其设置为false。