O2Sound_ver2_final/backend/app/domain/models/upload.py

30 lines
1.1 KiB
Python

from sqlalchemy import Column, String, ForeignKey
from sqlalchemy.dialects.postgresql import UUID
from sqlalchemy.orm import relationship
from app.domain.models.base import BaseModel
from sqlalchemy.dialects.postgresql import ARRAY
from sqlalchemy import Column, String, ForeignKey
from sqlalchemy.dialects.postgresql import UUID
from sqlalchemy.orm import relationship
from app.domain.models.base import BaseModel
from sqlalchemy.dialects.postgresql import ARRAY
class Upload(BaseModel):
'''업로드 모델'''
__tablename__ = "uploads"
# 외래키
video_id = Column(UUID(as_uuid=True), ForeignKey('videos.id'), nullable=False)
# 업로드 정보
title = Column(String, nullable=False) # 제목
description = Column(String, nullable=False) # 설명
tags = Column(ARRAY(String(30)), nullable=True) # 태그그
url = Column(String, nullable=False) # 주소
platform = Column(String, nullable=False) # 플랫폼
# 관계 설정
# ( uploads --- N:1 --- videos )
video = relationship("Video", back_populates="uploads")