laravel — отправьте электронное письмо, чтобы сообщить об ошибке с информацией о пользователе в Handler.Stack Overflow

Я отправляю электронное письмо с информацией об ошибке, когда у laravel есть исключение. Но я хотел бы включить информацию о пользователе, зарегистрированном во время ошибки.

В Handler.php

public function report(Exception $exception)
{
parent::report($exception);

Mail::send('emails.errorreport', ['e' => $exception], function($message)
{
$message->to('email@email.com')->subject('Report error');
});
}

В письмах / errorreport.blade.php

<h3>Error Information</h3>
<p><strong>Date:</strong> {{ date('M d, Y H:iA') }}</p>
<p><strong>Message:</strong> {{ $e->getMessage() }}</p>
<p><strong>Code:</strong> {{ $e->getCode() }}</p>
<p><strong>File:</strong> {{ $e->getFile() }}</p>
<p><strong>Line:</strong> {{ $e->getLine() }}</p>
<h3>Stack trace:</h3>
<pre>{{ $e->getTraceAsString() }}</pre>

@if(Auth::user())
<p><strong>   User: </strong> ID: {{Auth::user()->id}} / Name: {{Auth::user()->name}} / Email: {{Auth::user()->email}}</p>
@endif

Это не работает.

Информация об ошибке отправляется правильно, но не от пользователя. Даже когда у меня есть пользователь «if (Auth :: user ()) возвращает false.

2

Решение

Используйте check (), возвращает true, если пользователь вошел в систему … Auth :: user () возвращает объект пользователя … в противном случае Auth :: guest () возвращает true, если пользователь является гостем …

@if (Auth::check())
<p><strong>   User: </strong> ID: {{Auth::user()->id}} / Name: {{Auth::user()->name}} / Email: {{Auth::user()->email}}</p>
@endif
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector