Laravel点击文章详情提示Attempt to read property "title" on bool报错
错误原因
你在控制器中使用firstOrFail()方法查询数据,该方法返回的是单个Blog模型实例对象,并非可遍历的数据集/集合。
你在Blade模板中额外加了@foreach循环遍历这个单个实例,遍历过程中原始的$item模型对象会被覆盖为模型属性的对应值,当遍历到布尔类型的属性值时,你尝试读取该布尔值的title属性,就触发了本次报错。
解决方法
直接删除Blade模板中的@foreach和@endforeach代码即可,单条文章详情不需要循环遍历,直接调用$item的属性就行。
修改后的Blade代码参考:
<div class="col-lg-12 ftco-animate"> <h2 class="mb-3">{{ $item->title }}</h2> <div><span class="icon-calendar"></span><span class="ml-2">Published {{ $item->created_at }}</span><span></span> <span class="icon-person ml-2"></span><span class="ml-2">{{ $item->users->name }}</span></div> <p>{!! $item->content !!}</p> </div>
内容的提问来源于stack exchange,提问作者Hafidz Kholiq
相关产品推荐
相关产品推荐

