Метод связи должен возвращать объект типа Illuminate\Database\Eloquent\Relations\Relation

Попытка получить список пользователей, связанных с событием. Вот мои красноречивые модели:

User.php:

public function fbevents()
{
    $this->belongsToMany('Fbevent', 'fbevent_user');
}

Fbevent.php:

public function users()
{
    $this->belongsToMany('User', 'fbevent_user);
}

Я получаю эту ошибку, когда пытаюсь найти список:

$event = Fbevent::find(10);
var_dump($event->users->lists('userId'));

Я установил сводную таблицу в db со следующей миграцией:

$table->increments('id');
$table->integer('fbevent_id')->unsigned()->index();
$table->foreign('fbevent_id')->references('id')->on('fbevents')->onDelete('cascade');
$table->integer('user_id')->unsigned()->index();
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->timestamps();

И добавил запись в таблицу fbevent_user с fbevent_id = 10 и user_id = 1.

Ответ 1

Вам нужно вернуть результат из ваших отношений

public function fbevents()
{
    return $this->belongsToMany('Fbevent', 'fbevent_user');
}
public function users()
{
    return $this->belongsToMany('User', 'fbevent_user');
}