【发布时间】:2020-07-22 18:03:20
【问题描述】:
你好,正如标题所说,我不确定为什么我的代码没有为用户显示“名字”,但它只显示了 ID 我尝试了很多不同的方法来解决这个问题,但我而是 laravel 的初学者,所以我认为现在最好寻求帮助
稍微解释一下,“recieverID”字段是表用户的外键,显示用户的 ID
所以这里是名为“Remark”的模型
class Remark extends Model
{
protected $guarded =[];
public function user(){
return $this->belongsTo(User::class);
}
}
这是备注控制器
public function index()
{
if(Auth::guard('admin')->check())
{
$users = User::all();
$remarks = Remark::latest()->get();
return view('admin.remark.index', compact('users'),compact('remarks'));
}
它下面有更多代码,但我只在这部分需要它,我添加了 $users 和 compact users 因为我尝试在视图上添加 2 个 foreach 循环以查看它的外观,但它并没有像我觉得可能
这是我想要显示名称而不是 ID 的视图
@foreach($remarks as $remark)
<tr>
<td>{{$remark->recieverID->user->first_name}}</td>
<td>{{$remark->title}}</td>
<td>{{$remark->subject}}</td>
<td>{{$remark->message}}</td>
<td>{{$remark->sender}}</td>
</tr>
@endforeach
感谢您的宝贵时间
【问题讨论】:
-
我收到了这个错误
Call to a member function user() on integer