Er Content
%%{init: {"theme": "neutral", "themeVariables": {"fontFamily": "Times New Roman, serif"}}}%% erDiagram topics ||--o{ sections : "" sections ||--o{ subsections : "" topics ||--o{ tests : "" sections ||--o{ tests : "" topics ||--o{ questions : "" sections ||--o{ questions : "" tests ||--o{ test_questions : "" questions ||--o{ test_questions : "" tests ||--o{ test_attempts : "" topics { int id PK string title } sections { int id PK int topic_id FK } subsections { int id PK int section_id FK string type } tests { int id PK int topic_id FK int section_id FK string type } questions { int id PK int topic_id FK int section_id FK } test_questions { int test_id FK int question_id FK } test_attempts { int id PK int test_id FK string status }
Er Access Groups
%%{init: {"theme": "neutral", "themeVariables": {"fontFamily": "Times New Roman, serif"}}}%% erDiagram organizations ||--o{ users : "" organizations ||--o{ access_groups : "" access_groups ||--o{ access_group_memberships : "" users ||--o{ access_group_memberships : "" organizations { int id PK string name } users { int id PK string role string access_assignment_mode string keycloak_sub } access_groups { int id PK string key int organization_id FK } access_group_memberships { int access_group_id FK int user_id FK }
Er Diagram
%%{init: {"theme": "neutral", "themeVariables": {"fontFamily": "Times New Roman, serif"}}}%% erDiagram direction TB users ||--o{ group_members : "членство" group_members }o--|| groups : "состав" groups ||--o{ assignments : "назначение" assignments }o--|| topics : "назначение" topics ||--o{ labs : "состав" users { uuid id PK string username uuid role_id } groups { uuid id PK string name } group_members { uuid group_id FK uuid user_id FK } topics { uuid id PK string title } labs { uuid id PK uuid topic_id FK } assignments { uuid group_id FK uuid topic_id FK }