2025-06-11 04:19:17 +05:00

26 lines
1.0 KiB
Python

from sqlalchemy import Column, VARCHAR, Date, ForeignKey, Integer, String
from sqlalchemy.orm import relationship
from app.domain.models.base import AdvancedBaseModel
class Profile(AdvancedBaseModel):
__tablename__ = 'profiles'
first_name = Column(VARCHAR(150), nullable=False)
last_name = Column(VARCHAR(150), nullable=False)
patronymic = Column(VARCHAR(150))
birthday = Column(Date, nullable=False)
email = Column(VARCHAR(150))
phone = Column(VARCHAR(28))
repository_url = Column(String, nullable=True)
role_id = Column(Integer, ForeignKey('roles.id'), nullable=False)
team_id = Column(Integer, ForeignKey('teams.id'), nullable=False)
role = relationship('Role', back_populates='profiles')
team = relationship('Team', back_populates='profiles')
user = relationship('User', back_populates='profile', cascade='all')
profile_photos = relationship('ProfilePhoto', back_populates='profile', cascade='all')
projects = relationship('ProjectMember', back_populates='profile')