为foreach()提供的参数无效
我的控制器功能
use App\Tag
public function index()
{
//
$tags = Tag::all();
return view('tags.index')->withTags('$tags');
}
索引查看刀片
@foreach ($tags as $tag)
<tr>
<th>{{ $tag->id }}</th>
<td>
<a href="{{route('tags.show', $tag->id)}}">{{ $tag- >name }}</a>
</td>
</tr>
@endforeach
答案 0 :(得分:3)
只需删除单引号和Tags
中的withTags('$tags')
即可:
public function index()
{
$tags = Tag::all();
return view('tags.index')->with('tags', $tags);
}
或者您可以使用compact
来完成Salman所说的话。
答案 1 :(得分:3)
使用 compact ,尝试以下代码会更轻松,更简单:
public function index()
{
//
$tags = Tag::all();
return view('tags.index',compact('tags'));
}
如果您想使用和,请尝试以下代码:
public function index()
{
//
$tags = Tag::all();
return view('tags.index')->with('tags',$tags);
}
您可以在刀片中做您想做的事,也可以使用 forelse 尝试以下代码:
@forelse($tags as $tag)
<tr>
<th>{{ $tag->id }}</th>
<td>
<a href="{{route('tags.show', $tag->id)}}">{{ $tag- >name }}</a>
</td>
</tr>
@empty
<div class='alert alert-danger'>
No tags..!
</div>
@endforelse