Bei Verwendung von Laravel 5.3 gibt es ein Problem mit der @if-Beurteilung in der Ansicht unten:
Wenn der Benutzer keine Artikel hat, wird der Inhalt in @if weiterhin anstelle des Inhalts in @else ausgeführt, d. h. „hat Artikel“. " wird angezeigt. Ist der Weg $articles!= null
in der Ansicht falsch geschrieben?
Controller:
$user=\Auth::user();
$articles = $user->articles;
return view('articles.index', compact('articles'));
Ansicht:
@if ($articles!= null)
<p>有文章</p>
@else
<p>没有文章</p>
@endif
都用到5.3了?
Collection有isEmpty方法,判断Collection是否为空。你的应该可以用$articles->isEmpty()判断。
详见官方api文档:https://laravel.com/api/5.0/I...
官方文档中的介绍:
还没用到 laravel 5.3
不过返回的集合是不能用 Null 判断的
因为即使是空他也会返回 collection 对象
可以用 $articles->count() 或者是 $articles->first()