17 lines
603 B
Python
17 lines
603 B
Python
from sqlmodel import SQLModel, Field, Relationship
|
|
|
|
|
|
class TeamMember(SQLModel, table=True):
|
|
"""Участник команды (many-to-many: User <-> Team)."""
|
|
|
|
__tablename__ = "team_members"
|
|
|
|
id: int | None = Field(default=None, primary_key=True)
|
|
user_id: int = Field(foreign_key="users.id")
|
|
team_id: int = Field(foreign_key="teams.id")
|
|
role: str = Field(default="participant", max_length=50) # programmer, designer, marketer...
|
|
|
|
# Relationships
|
|
user: "User" = Relationship(back_populates="team_memberships")
|
|
team: "Team" = Relationship(back_populates="members")
|