I have blade view with @foreach loop. In this blade view I also pass on $user variable in UserController. Inside @foreach I have code {{ $user->getAvatar() }}.
@extends('layouts.app')
@section('content')
@foreach($threads as $thread)
<div class="media alert {{ $class }}">
<img src="{{ $user->getAvatar() }}">
<div class="media-body">
<p>
{{ $thread->latestMessage->body }}
</p>
</div>
</div>
@endforeach
@endsection
This is index() function in my controller
public function index()
{
$user = Auth::user();
$threads = Thread::getAllLatest()->get();
return view('messenger.index', compact('threads', 'user'));
}
I have error Undefined variable: user. foreach loop don't see variable from other part of view.
ErrorException (E_ERROR)
Undefined variable: user (View:messenger\partials\thread.blade.php) (View: messenger\partials\thread.blade.php)
Previous exceptions
Undefined variable: user (View: messenger\partials\thread.blade.php) (0)
Undefined variable: user (0)
messenger.indexbut the error is coming frommessenger\partials\thread.blade.php. Are you showing us all the relevant view code? Are you calling a partial somewhere and not passing that variable to it?@foreachloop don't see variable from outside.