Когда мне нужно красноречиво использовать отношения «многие ко многим», «Имеет ли один сквозной», «Имеет много сквозных»? - PullRequest
0 голосов
/ 30 мая 2019

Мне просто любопытно, когда я должен использовать отношение «многие ко многим», отношение «имеет один сквозной», отношение «имеет много сквозного»? Потому что я уверен, что эти три отношения вполне реализованы отношениями один к одному и отношениями один ко многим.

пример (взят из документации Laravel):

таблица: пользователи

ID

имя

таблица: роли

ID

имя

таблица: RoleUser

ID

user_id

role_id

отношения достаточно, чтобы использовать один ко многим, а именно: «пользователь» имеет много «roleuser», а «role» имеет много «roleusers».

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    /**
     * The roles that belong to the user.
     */
    public function roles()
    {
        return $this->belongsToMany('App\Role');
    }
}



<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Role extends Model
{
    /**
     * The users that belong to the role.
     */
    public function users()
    {
        return $this->belongsToMany('App\User');
    }
}
...