refactors
This commit is contained in:
parent
4e1a339432
commit
82c4d0168e
28 changed files with 1042 additions and 782 deletions
36
backend/models/associations.py
Normal file
36
backend/models/associations.py
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
from sqlalchemy import Column, Enum, ForeignKey, Integer, Table
|
||||
|
||||
from database import Base
|
||||
|
||||
from .enums import Permission
|
||||
|
||||
# Association table: Role <-> Permission (many-to-many)
|
||||
role_permissions = Table(
|
||||
"role_permissions",
|
||||
Base.metadata,
|
||||
Column(
|
||||
"role_id",
|
||||
Integer,
|
||||
ForeignKey("roles.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
),
|
||||
Column("permission", Enum(Permission), primary_key=True),
|
||||
)
|
||||
|
||||
# Association table: User <-> Role (many-to-many)
|
||||
user_roles = Table(
|
||||
"user_roles",
|
||||
Base.metadata,
|
||||
Column(
|
||||
"user_id",
|
||||
Integer,
|
||||
ForeignKey("users.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
),
|
||||
Column(
|
||||
"role_id",
|
||||
Integer,
|
||||
ForeignKey("roles.id", ondelete="CASCADE"),
|
||||
primary_key=True,
|
||||
),
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue