首页 > 解决方案 > Laravel BelongsToMany 关系“调用未定义的关系”

问题描述

在这种情况下我找不到问题,需要 Laravel 多对多关系方面的帮助:

lluminate\Database\Eloquent\RelationNotFoundException
Call to undefined relationship [registered_events] on model [App\User].

每当我尝试访问该关系时,都会显示上述错误,尽管该关系似乎是正确的。反比关系很好。

用户模型

class User extends Authenticatable
{

    public function registered_events() 
    {
        return $this->belongsToMany(Event::class, 'event_user', 'user_id', 'event_id' )->withPivot('id', 'status', 'eventmanager', 'created_at', 'updated_at');
    }
}

事件模型

class Event extends Model
{
    public function registered_users() 
    {
        return $this->belongsToMany(User::class, 'event_user', 'event_id', 'user_id')->withPivot('id', 'status', 'eventmanager', 'created_at', 'updated_at');
    }
}

事件分配控制器

public function admin_event_overview()
    {
        $user = auth()->user();

        // Problem here ⬇️
        $eventmanagers = $user->with('registered_events')->get();
        
        
        return view('dashboard.admin.event_allocation.overview', compact('user','eventmanagers'));
        
    }

标签: phplaravel

解决方案


推荐阅读