From 8873449b6c2d5865bf88ec96285beead02311c43 Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Sat, 24 Jul 2021 18:56:15 +0200 Subject: [PATCH] Add count example to 2.0 migration table Also update some further load_only(str) left in the docs Fixes: #6794 Change-Id: If3f0ef82a4cdcc8adceef55ab1b1a6a99f4f2a08 --- doc/build/changelog/migration_20.rst | 12 ++++++++++++ doc/build/orm/loading_columns.rst | 8 ++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/doc/build/changelog/migration_20.rst b/doc/build/changelog/migration_20.rst index 5bae55a488..71939f44f6 100644 --- a/doc/build/changelog/migration_20.rst +++ b/doc/build/changelog/migration_20.rst @@ -1326,6 +1326,18 @@ following the table, and may include additional notes not summarized here. - :ref:`orm_expression_update_delete` + * + - :: + + session.query(User).count() + + - :: + + session.scalar(select(func.count()).select_from(User)) + session.scalar(select(func.count(User.id))) + + - :meth:`_orm.Session.scalar` + .. _migration_20_unify_select: ORM Query Unified with Core Select diff --git a/doc/build/orm/loading_columns.rst b/doc/build/orm/loading_columns.rst index 7b0530a7e8..de10901e46 100644 --- a/doc/build/orm/loading_columns.rst +++ b/doc/build/orm/loading_columns.rst @@ -133,7 +133,7 @@ may be used:: query = session.query(Author) query = query.options( joinedload(Author.book).options( - load_only("summary", "excerpt"), + load_only(Book.summary, Book.excerpt), joinedload(Book.citations).options( joinedload(Citation.author), defer(Citation.fulltext) @@ -152,7 +152,7 @@ to create the same structure as we did above using :meth:`_orm.Load.options` as: query = session.query(Author) query = query.options( - joinedload(Author.book).load_only("summary", "excerpt"), + joinedload(Author.book).load_only(Book.summary, Book.excerpt), defaultload(Author.book).joinedload(Book.citations).joinedload(Citation.author), defaultload(Author.book).defaultload(Book.citations).defer(Citation.fulltext) ) @@ -190,7 +190,7 @@ that are named:: from sqlalchemy.orm import load_only - session.query(Book).options(load_only("summary", "excerpt")) + session.query(Book).options(load_only(Book.summary, Book.excerpt)) Wildcard and Exclusionary Options with Multiple-Entity Queries ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -209,7 +209,7 @@ both at once. Using :class:`_orm.Load` looks like:: query = session.query(Book, Author).join(Book.author) query = query.options( - Load(Book).load_only("summary", "excerpt") + Load(Book).load_only(Book.summary, Book.excerpt) ) Above, :class:`_orm.Load` is used in conjunction with the exclusionary option -- 2.47.2