archive-backend/models/photo_model.py
2026-11-07 17:27:59 +00:00

26 lines
776 B
Python

from __future__ import annotations
from sqlalchemy import ForeignKey, String
from sqlalchemy.orm import Mapped, mapped_column, relationship
from ..core.db import Base
class Category(Base):
__tablename__ = "categories"
id: Mapped[int] = mapped_column(primary_key=True)
title: Mapped[str] = mapped_column(String(64))
photos: Mapped[list[Photo]] = relationship(back_populates="category")
class Photo(Base):
__tablename__ = "photos"
id: Mapped[int] = mapped_column(primary_key=True)
filename: Mapped[str] = mapped_column(String(255), unique=True)
path: Mapped[str] = mapped_column(String(512))
category_id: Mapped[int] = mapped_column(ForeignKey("categories.id"))
category: Mapped[Category] = relationship(back_populates="photos")