Я пытаюсь создать систему контроля доступа на основе ролей, но проблема возникает, когда я подхожу к части базы данных.
Должен ли я создать две модели, «Роль» и «Разрешение», а затем установить отношение «многие ко многим» между ролью и разрешением или как?
Моя модель пользователя выглядит примерно так:
Column | Type | Collation | Nullable | Default
------------+-----------------------------+-----------+----------+--------------------
id | uuid | | not null | uuid_generate_v4()
name | character varying(50) | | not null |
email | character varying(320) | | not null |
avatar | text | | |
password | text | | not null |
phone | character varying(30) | | |
created_at | timestamp without time zone | | not null | now()
updated_at | timestamp without time zone | | | now()
companyId | uuid | | |
roleId | uuid | | |
Итак, у меня есть только один к многим отношениям между пользователем и ролью.