Исправление внешнего ключа в отношениях Laravel - PullRequest
0 голосов
/ 07 ноября 2018

В Laravel (v5.7.12) у меня есть две модели - User и Project.

Пользователь имеет id и может иметь много проектов. Проект имеет owner_id.

Я не могу правильно настроить отношения. В моей пользовательской модели у меня есть:

/**
 * Get the projects associated with the user.
 */
public function projects()
{
    $this->hasMany('\App\Project', 'owner_id', 'id');
}

В моей модели проекта у меня есть:

/**
 * Get the owner associated with the user.
 */
public function owner()
{
    $this->belongsTo('\App\User', 'id', 'owner_id');
}

Но вызов $user->projects() или $project->owner() возвращает null.

Как настроить нестандартные ключи отношений?

1 Ответ

0 голосов
/ 07 ноября 2018

Вы забыли вернуть метод:

public function projects()
{
    return $this->hasMany('\App\Project', 'owner_id');
}

Сделайте это также для второго:

public function owner()
{
    return $this->belongsTo('\App\User', 'owner_id');
}
...