尝试获取非对象的 属性 'users' 时出错

Error trying to get property 'users' of non-object

我有一个问题,我正在对登录应用程序的用户进行转换历史记录。

@foreach($eventos as $evento)
  if($evento->solicitud->users->id == (Auth::user()->id))
    <div class="item-timeline">
      <div class="t-meta-date">
        <p class="">{{$evento->fecha}}</p>
      </div>
      <div class="t-dot">
      </div>
      <div class="t-text">
        <p>{{$evento->servicio->servicio}}</p>
        <p>{{$evento->personal}}</p>
      </div>
    </div>
  @endif
@endforeach

我得到所有班次:

  public function perfil (){

    $eventos = Eventos::All();
  

    $data = [
        'category_name' => 'users',
        'page_name' => 'profile',
        'has_scrollspy' => 0,
        'scrollspy_offset' => '',

    ];
    // $pageName = 'profile';
    return view('users.user_profile',compact('eventos'))->with($data);
}

模型事件:

public function solicitud()
{
    return $this->belongsTo(Solicitudes::class);
}

模特关怀:

 public function evento()
{
    return $this->belongsTo(Eventos::class);
}

然后用if条件过滤

但它显示错误 Trying to get property 'users' of non-object

dd 捕获:https://i.imgur.com/WUVOaO6.png

数据库:https://i.imgur.com/J5YSvxQ.png

我需要从 solicitudes table.

中获取 User_id

关系是:Eventos table-> solicitud_id与ID列39=]关心table.

根据您提供的代码,$evento-> solicitud-> users 意味着我假设您使用了嵌套关系并且缺少以下内容

  1. 'solicitudes' class
  2. 中没有 'users' 关系
  3. 您在获取事件时没有在控制器中调用关系(即 $eventos=Eventos::with('solicitud.users')->get()

如果我的假设是错误的,请纠正我