在 Laravel 9 中,报错:Call to undefined method Illuminate\\Http\\Resources\\MissingValue::isEmpty()
1、在 Laravel 9 中,报错:Call to undefined method Illuminate\\Http\\Resources\\MissingValue::isEmpty()。如图1
2、查看代码实现
if ($this->whenLoaded('customTagsEnable')->isEmpty()) { return []; }
3、打印 $this->whenLoaded(‘customTagsEnable’),其结果如下,分别为 资源在模型关联未被加载后、资源在模型关联被加载后 的结果
object(Illuminate\Http\Resources\MissingValue)#4330 (0) { }
object(Illuminate\Database\Eloquent\Collection)#4177 (2) { ["items":protected]=> array(0) { } ["escapeWhenCastingToString":protected]=> bool(false) }
4、重新实现如下,不再报错
use Illuminate\Http\Resources\MissingValue; if ($this->whenLoaded('customTagsEnable') instanceof MissingValue) { return []; }
近期评论