当尝试在文章中回显用户名时,您可能会遇到“ ErrorException:尝试获取非对象的属性”错误。以下是可能导致此问题的原因:
使用 dd($article) 检查您的查询。确定它返回的是数组还是对象。如果是数组,则应使用数组访问 ([]),而不是对象访问 (->)。
您的 News 模型具有 postsBy 关系,这似乎是定义正确。但是,请确保在将关系传递到视图之前在控制器中正确初始化该关系。
验证用户模型是否存在于您的应用程序中。如果未加载或正确注册,关系将无法正常工作,从而导致错误。
确认您的用户表中有一个名称字段并且它对应到您尝试访问的属性($article->postedBy->name)。
仔细检查用于访问用户名的刀片语法是否正确。应该是:
{{ $article->postedBy?->name ?? '' }}
?? '' 处理 $article->postedBy 关系为 null 或没有 name 属性的情况。
以上是Laravel 5:为什么在视图中显示用户数据时出现'尝试获取非对象的属性”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!