我有一个向我展示用户优惠的网站:
使用foreach,我可以看到所有报价
@foreach ($praktikas as $praktika)
<div class="col-12 col-md-6 col-lg-4 pt-4 card-wrapper">
<div class="card offer-card">
<div class="card-image">
<img class="img-fluid" alt="Logo der Firma: {{$user[$praktika->firma -1]->avatar}}" src="{{ asset('uploads/avatars/' . $user[$praktika->firma -1]->avatar) }}">
</div>
<div class="card-body">
<h4 class="text-dark">{{ $praktika->stellenname }}</h4>
<a href="{{ route('angebot.details',['id'=>$praktika->firma]) }}">Jetzt mehr anzeigen »</a>
</div>
</div>
</div>
@endforeach
现在我有一个ID为88的新用户,但它称我为未定义的offset: 87
?
我知道问题出在哪里,是因为这:
$user[$praktika->firma -1]->avatar
找不到ID为88的用户
如果我想显示这样的用户:
$user[83]->avatar
一切正常,但没有显示ID为88的用户,但在我的数据库中可以看到该用户!
我不知道该怎么办?因为它一直都有效,现在我不知道发生了什么。
这是我的控制器:
public function showpraktika()
{
$praktikas = DB::table('angebots')
->where('stellentyp', 'Praktikum')
->orderBy('stellenname', 'asc')
->get();
$row = DB::table('angebots')
->where('stellentyp', 'Praktikum')
->count();
$user = DB::table('users')->get();
return view('user/praktika', ['praktikas' => $praktikas, 'row' => $row, 'user' => $user]);
}
答案 0 :(得分:4)
当您编写$ user [88]时,您不是在寻找id = 88的用户,而是在寻找索引。
如果用户是Laravel集合,请使用:
$user->firstWhere('id', $praktika->firma -1)->avatar;
在这里您可以看到Laravel中所有可用的方法,这非常有用:https://laravel.com/docs/5.7/collections#available-methods
答案 1 :(得分:0)
要通过ID获取用户,请使用_id
答案 2 :(得分:0)
您在此处通过索引(88)访问@material-ui/core/${item}
数组。
$user[]
,但您的<img class="img-fluid" alt="Logo der Firma: {{$user[$praktika->firma -1]->avatar}}"
src="{{ asset('uploads/avatars/' . $user[$praktika->firma -1]->avatar) }}">
键中的键不等于您的用户ID。它是零索引数组。
所以您可以做的是
控制器
$user[]