summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2020-10-14 16:37:40 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2020-10-14 16:37:40 -0400
commitf2615fac0bf67f8de93a483335a3bc00b263cf56 (patch)
tree11438d9f4f26318115cb640b5f58d2e7f7d60099
parent2555f095d0f219d702bb454e3e0298566b629ae4 (diff)
parent7740ce6900ad3e65364660a270cc72458421433a (diff)
downloadsqlalchemy-f2615fac0bf67f8de93a483335a3bc00b263cf56.tar.gz
Merge remote-tracking branch 'origin/pr/5636'
Change-Id: I785a3c8a49f2d75279ade65bd86915de1178a3ff
-rw-r--r--doc/build/orm/cascades.rst9
1 files changed, 4 insertions, 5 deletions
diff --git a/doc/build/orm/cascades.rst b/doc/build/orm/cascades.rst
index 3f06b34c2..528e69a97 100644
--- a/doc/build/orm/cascades.rst
+++ b/doc/build/orm/cascades.rst
@@ -93,12 +93,11 @@ becomes part of the state of that :class:`.Session`::
>>> address3 in sess
>>> True
-``save-update`` has the possibly surprising behavior which is that
-persistent objects which were *removed* from a collection
-or in some cases a scalar attribute
-may also be pulled into the :class:`.Session` of a parent object; this is
+A ``save-update`` cascade can exhibit surprising behavior when removing an item from
+a collection or de-associating an object from a scalar attribute. In some cases, the
+orphaned objects may still be pulled into the ex-parent's :class:`.Session`; this is
so that the flush process may handle that related object appropriately.
-This case can usually only arise if an object is removed from one :class:`.Session`
+This case usually only arises if an object is removed from one :class:`.Session`
and added to another::
>>> user1 = sess1.query(User).filter_by(id=1).first()