当我尝试使用外键$user->name
从User model
获取用户名(id
时出现错误未定义变量 $feedback->user_id
)的反馈模型。
@php
use App\Feedback;
use App\User;
$feedbacks = Feedback::all();
@endphp
<!DOCTYPE html>
<html>
<body>
<a href="/admin">ADMIN DASHBOARD</a> |<a href="{{ url('/logout') }}"> LOGOUT</a><br><br>
<h3>Feedbacks</h3>
<table border="1">
<tr><th>ID</th><th>Left By</th><th>Feedback</th></tr>
@foreach ($feedbacks as $feedback)
<tr>
<td>{{ $feedback->id}}</td>
<td>{{ $user->name }}</td>
<td>{{ $feedback->feedback }}</td>
</tr>
$uid=$feedback->user_id;
$user= User::find($uid);
@endforeach
</table>
</body>
</html>
答案 0 :(得分:1)
我建议在feedback
和user
之间创建一个关系(如果您还没有)。您的关系将放入Feedback
模型中,如下所示:
// Feedback.php
public function user() {
return $this->belongsTo('App\User');
}
这将使用feedback
表上的user
将user_id
与feedback
关联起来。
此后,在控制器中调用feedback
时,您可以迅速加载与每个user
的{{1}}关系。这可以在以下范围内完成:
feedback
最后,在模板中,您可以通过执行以下操作来通过每个$feedbacks = Feedback::with('user')->get();
调用user
:
feedback
注意:此示例假定{{ $feedback->user->name }}
是name
表上的一个字段。