Попытка получить имя пользователя из модели User, используя user_id Laravel - PullRequest
0 голосов
/ 03 ноября 2018

Я получаю сообщение об ошибке неопределенная переменная , когда пытаюсь получить имя пользователя ($user->name) из User model, используя id, который является внешним ключом ($feedback->user_id) модели Feedback. .

@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>

1 Ответ

0 голосов
/ 03 ноября 2018

Я бы предложил создать отношение между feedback и user (если у вас его еще нет). Ваше отношение будет помещено в модель Feedback и будет выглядеть так:

// Feedback.php

public function user() {
    return $this->belongsTo('App\User');
}

Это будет связывать feedback с user, используя user_id в таблице feedback.

После этого при вызове feedback в вашем контроллере вы можете нетерпеливо загрузить отношение user с каждым feedback. Это можно сделать в следующем:

$feedbacks = Feedback::with('user')->get();

Наконец, в вашем шаблоне вы сможете вызывать user через каждый feedback, выполнив следующие действия:

{{ $feedback->user->name }}

Примечание : В этом примере предполагается, что name - это поле в таблице user.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...