From 81ec849cc683b1a79967908aa04eb3cec4cfa563 Mon Sep 17 00:00:00 2001 From: Michael Genson Date: Thu, 14 May 2026 18:07:54 +0000 Subject: [PATCH] define PrivateColumn --- mealie/db/models/_model_base.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mealie/db/models/_model_base.py b/mealie/db/models/_model_base.py index ef9b7cacc..f43590215 100644 --- a/mealie/db/models/_model_base.py +++ b/mealie/db/models/_model_base.py @@ -1,5 +1,6 @@ import string from datetime import datetime +from typing import Annotated from sqlalchemy import Integer from sqlalchemy.orm import DeclarativeBase, Mapped, declared_attr, mapped_column, synonym @@ -13,6 +14,12 @@ from ._model_utils.datetime import NaiveDateTime, get_utc_now NORMALIZE_PUNCTUATION = string.punctuation.replace("'", "").replace('"', "") _NORMALIZE_PUNCTUATION_TABLE = str.maketrans(NORMALIZE_PUNCTUATION, " " * len(NORMALIZE_PUNCTUATION)) +type PrivateColumn[T] = Mapped[Annotated[T, mapped_column(info={"private": True})]] +""" +A `Mapped` attribute with metadata `private=True`. +Signals to the query filter API not to allow using this field in query operations. +""" + class SqlAlchemyBase(DeclarativeBase): id: Mapped[int] = mapped_column(Integer, primary_key=True)