diff --git a/src/flask_sqlalchemy/query.py b/src/flask_sqlalchemy/query.py index 35f927d2..5ae97780 100644 --- a/src/flask_sqlalchemy/query.py +++ b/src/flask_sqlalchemy/query.py @@ -27,7 +27,9 @@ def get_or_404(self, ident: t.Any, description: str | None = None) -> t.Any: :param ident: The primary key to query. :param description: A custom message to show on the error page. """ - rv = self.get(ident) + model = (self.column_descriptions[0].get("entity") + or self.column_descriptions[0]["type"]) + rv = self.session.get(model, ident) if rv is None: abort(404, description=description)