Как я могу получить значения принадлежит отношения - PullRequest
0 голосов
/ 16 мая 2019

Я хочу получить значения отношения ownTo. Значения возвращаются, но когда я использую цикл, он возвращает object of property [] not found.

Это возвращенный json [user_request] на блейде:

{
  "id": 2,
  "name": "henry",
  "email": "wvanye@ymail.com",
  "email_verified_at": null,
  "created_at": "2019-05-15 19:04:42",
  "updated_at": "2019-05-15 19:04:42",
  "Affiliate": "FMS",
  "admin": 0
}

Мой код:


examrequest model
class examrequest extends Model
{
  protected $table = 'examrequest';

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


Controller
public function getRequest(){
  $request = examrequest::first()->users;

    $count = $this->isThereRequest();
    return view('admin.request', ['user_request'=>$request]);
 }

blade view
@foreach ($user_request as $key => $value )
    <tr>
     <th scope="row"></th>
     <td>{{$value->id}}</td>
     <td>{{$value->name}}</td>
     <td>{{$value->email}}</td>
     <td><button>Approve</button></td>
    </tr>
@endforeach

I want to display all the values but its returning :: Trying to get property 'id' of non-object

1 Ответ

1 голос
/ 16 мая 2019

Если вы ищете коллекцию для цикла, вы не получите этого, если используете first(), поскольку это не будет тянуть коллекцию, а скорее один объект. Изменение

$request = examrequest::first()->users;

до

$request = examrequest::with('users')->get();

На данный момент коллекция экзаменов будет находиться внутри $ request.

На стороне лезвия, если вы хотите зациклить эту коллекцию и вытащить каждого пользователя, вы можете упростить это, просто потянув пользователя с foreach. Изменения:

@foreach ($user_request as $key => $value )

до

@foreach ($user_request as $request )

, а затем извлеките необходимые поля из пользовательского отношения на объекте $request: $request->users->id ... и т. Д. Внутри цикла на странице блейда.

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