Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/sqlalchemy/orm/__pycache__/unitofwork.cpython-39.pyc
Ðазад
a _�h�` � @ s d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z d d � Z G dd� de�ZG d d� de�Z G dd� de �ZG dd� de�ZG dd� de e�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd � d e�Zd!S )"z�The internals for the unit of work system. The session's flush() process passes objects to a contextual object here, which assembles flush tasks based on mappers and their properties, organizes them in order of dependency, and executes. � �� attributes)�exc)�persistence)�util� )�event)�topologicalc sj |j � � fdd�}� fdd�}� fdd�}tj| d|ddd � tj| d |ddd � tj| d|ddd � dS ) z\Establish event listeners on object attributes which handle cascade-on-set/append. c sn |d u rd S | j }|rj|jr&|�d� | jjj� }t�|�}|jj rj|j sV� |jkrj|�|�sj|� |� |S )Nzcollection append)�session�_warn_on_events�_flush_warning�manager�mapper�_propsr �instance_state�_cascade�save_update�cascade_backrefs�key�_contains_state�_save_or_update_state��state�item� initiator�sess�propZ item_state�r � ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/sqlalchemy/orm/unitofwork.py�append s$ ���� z$track_cascade_events.<locals>.appendc s� |d u rd S | j }| jjj� }|r>|jr>|�|jr8dnd� |d ur�|tjur�|tj ur�|j jr�t�|�}|j� |�r�|r�||jv r�|�|� nd|_d S )Nzcollection removezrelated attribute deleteT)r r r r r r Zuselistr � NEVER_SET�PASSIVE_NO_RESULTr � delete_orphanr � _is_orphan�_new�expungeZ_orphaned_outside_of_sessionr r r r �remove6 s. ������ z$track_cascade_events.<locals>.removec s� ||u r|S | j }|r�|jr&|�d� | jjj� }|d urrt�|�}|jj rr|j s^� |jkrr|�|�sr|� |� |d ur�|tjur�|tjur�|jjr�t�|�}||jv r�|j�|�r�|�|� |S )Nzrelated attribute set)r r r r r r r r r r r r r r r! r"