我想展示我的“天使”
这是我的控制器:
public function showangebot($firma)
{
$dataangebot['angebotDetails'] = Angebot::where('firma',$firma)->first();
return view('user/einzelansicht',$dataangebot);
}
这是我的观点:
<div class="card">
<div class="card-header" id="headingOne">
<h5 class="mb-0">
<button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
{{$angebotDetails->stellenname}}
</button>
</h5>
</div>
这可以使我看到第一个对象 但我想了解所有内容,因此我在控制器中删除了“-> first()” 并在我看来使用foreach 像这样:
@foreach($angebotDetails as $angebotDetail)
它告诉我这个错误:
"Undefined property: Illuminate\Database\Eloquent\Builder::$firma (View: C:\wamp\sites\j4ylara\resources\views\user\einzelansicht.blade.php)"
我不知道问题出在哪里,因为我一直在使用它,并且一切正常,但现在不行
如果我使用-> get()代替-> first()或如果我使用此
$dataangebot['angebotDetails'] = DB::table('angebots')
->where('firma',$firma)
->get();
它告诉我:
Property [firma] does not exist on this collection instance. (View: C:\wamp\sites\j4ylara\resources\views\user\einzelansicht.blade.php)
答案 0 :(得分:0)
您应该在控制器中使用 get 而不是 first 。 get函数检索一个Collection,这是您需要传递给视图并在视图中进行迭代的对象。
public function showangebot($firma)
{
$dataangebot['angebotDetails'] = Angebot::where('firma',$firma)->get();
return view('user/einzelansicht',$dataangebot);
}
参考:
Property [firma] does not exist on this collection instance. (View: C:\wamp\sites\j4ylara\resources\views\user\einzelansicht.blade.php)
您最有可能在 @foreach 循环之外引用 firma 。这是您应该尝试的
@foreach($angebotDetails as $angebotDetail)
{{ $angebotDetail->firma }}
@endforeach
答案 1 :(得分:0)
这是最简单的方法。
public function showangebot($firma)
{
$angebots = Angebot::where('firma',$firma)->get();
return view('user/einzelansicht',compact('angebots'));
}
然后在视图文件中调用变量。
@foreach ($angebots as $angebot)
<div class="card">
<div class="card-header" id="headingOne">
<h5 class="mb-0">
<button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
{{$angebot->stellenname}}
</button>
</h5>
</div>
@endforeach