【问题标题】:Undefined property: Illuminate\Database\Eloquent\Relations\HasMany::$id未定义属性:Illuminate\Database\Eloquent\Relations\HasMany::$id
【发布时间】:2018-11-19 17:04:14
【问题描述】:

我遇到了这种关系错误:

未定义的属性: Illuminate\Database\Eloquent\Relations\HasMany::$id

我错过了什么吗?这是我的代码:

用户.php

public function schools(){
    return $this->hasMany('App\SchoolsList');
}

SchoolsList.php

public function user()
{
    return $this->belongsTo(User::class);
}

我的刀

<input type="hidden" value="{{ auth()->user()->schools()->id }}" name="school_id">

【问题讨论】:

    标签: laravel-5.4


    【解决方案1】:

    您的 schools 关系是 hasMany,对于延迟加载,您必须使用 ->users 而不是 ->users(),另外 auth()->user()->schools 是 Illuminate\Database\Eloquent\Collection您必须更改类似这样的代码

    @foreach(auth()->user()->schools as $school)
        <input type="hidden" value="{{ $school->id }}" name="school_id">
    @endforeach
    

    【讨论】:

      猜你喜欢
      • 2019-08-12
      • 2020-05-04
      • 2018-11-22
      • 2020-07-08
      • 2021-09-23
      • 2021-06-07
      • 1970-01-01
      • 1970-01-01
      • 2021-11-25
      相关资源
      最近更新 更多