php - 试图在评论 Laravel 系统中获取非对象的属性“名称”
问题描述
在页面上显示评论时,我试图让作者的用户名显示他们写的附近评论。我有一个错误“试图获取非对象的属性'名称'”
控制器:
public function index(Site $site)
{
$comments=Comments::where('siteId', $site->id)->get();
return view('admin.comments.show', compact('comments'));
}
看法:
@foreach($comments as $comment)
{{$comment->user->name}}
@endforeach
用户型号:
public function comments()
{
return $this->hasMany(Comments::class);
}
评论型号:
public function comments()
{
return $this->belongsTo(User::class);
}
我想使用关系。谢谢你的帮助!:)
解决方案
Comment
将模型中的关系更改为:
public function user()
{
return $this->belongsTo(User::class);
}
那应该行得通。
推荐阅读
- javascript - 使用自定义钩子反应检测组件外部的点击
- android - Android 谷歌登录警告
- database - 我应该更好地使用 VARCHAR(3) 或 BIGINT() 作为 PostgreSQL 的主键吗?
- r - 回归系数与效应大小相同吗?
- python - Pyinstaller Python 和 Matplotlib 版本在处理可执行文件 Windows 10 时导致 RuntimeError
- pyspark - 使用 pyspark 查找表并从另一个表中获取列
- python - AttributeError: 'Options' object has no attribute 'self' error using ChromeOptions for headless Google Chromethrough Selenium Python
- python - 如何使用不同的数据框做一个双扣来完成缺失的信息
- python - 字典到 Excel
- python - Python pandas 绘制多条线