import uuid from sqlalchemy import Column, DateTime, func, ForeignKey, UniqueConstraint from sqlalchemy.dialects.postgresql import UUID from sqlalchemy.orm import relationship from app.config.database import Base class RoleAccess(Base): __tablename__ = "role_accesses" id = Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) role_id = Column(UUID(as_uuid=True), ForeignKey("roles.id"), nullable=False, index=True) access_id = Column(UUID(as_uuid=True), ForeignKey("accesses.id"), nullable=False, index=True) created_at = Column(DateTime(timezone=True), server_default=func.now()) # Relationships role = relationship("Role", back_populates="role_accesses") access = relationship("Access", back_populates="role_accesses") __table_args__ = ( UniqueConstraint('role_id', 'access_id', name='uq_role_access'), ) def __repr__(self): return f""