MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / presort_saves

Method presort_saves

lib/sqlalchemy/orm/dependency.py:766–785  ·  view source on GitHub ↗
(self, uowcommit, states)

Source from the content-addressed store, hash-verified

764 uowcommit.register_object(st_, isdelete=True)
765
766 def presort_saves(self, uowcommit, states):
767 for state in states:
768 uowcommit.register_object(state, operation="add", prop=self.prop)
769 if self.cascade.delete_orphan:
770 history = uowcommit.get_attribute_history(
771 state, self.key, self._passive_delete_flag
772 )
773 if history:
774 for child in history.deleted:
775 if self.hasparent(child) is False:
776 uowcommit.register_object(
777 child,
778 isdelete=True,
779 operation="delete",
780 prop=self.prop,
781 )
782
783 t = self.mapper.cascade_iterator("delete", child)
784 for c, m, st_, dct_ in t:
785 uowcommit.register_object(st_, isdelete=True)
786
787 def process_deletes(self, uowcommit, states):
788 if (

Callers

nothing calls this directly

Calls 4

register_objectMethod · 0.80
get_attribute_historyMethod · 0.80
hasparentMethod · 0.45
cascade_iteratorMethod · 0.45

Tested by

no test coverage detected