File: //opt/alt/python37/lib64/python3.7/site-packages/sqlalchemy/orm/__pycache__/dynamic.cpython-37.pyc
B
��4]J9 � @ s
d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z dd lm
Z dd
lm
Z
ddlmZ ddlmZ dd lm
Z
ejejjd
d�G dd� de j���ZG dd� dej�ZG dd� de�ZG dd� dee
�Zdd� ZG dd� de�ZdS )z�Dynamic collection API.
Dynamic collections act like Query() objects for read operations and support
basic add/delete mutation.
� )�
attributes)�exc)�
interfaces)�
object_mapper)�object_session)�
properties)�
strategies)�util)�Query� )�log�dynamic)Zlazyc @ s e Zd Zdd� ZdS )�
DynaLoaderc C sl d| _ | jst�d| j ��n$| jjtjtjfkrBt �
d| j � tj| j|dt
| jj| jj| jjd� d S )NTztOn relationship %s, 'dynamic' loaders cannot be used with many-to-one/one-to-one relationships and/or uselist=False.z�On relationship %s, 'dynamic' loaders cannot be used with many-to-one/one-to-one relationships and/or uselist=False. This warning will be an exception in a future release.)Z useobjectZ
impl_class�
target_mapper�order_by�query_class)Zis_class_levelZuselistr ZInvalidRequestErrorZparent_property� directionr Z ONETOMANYZ
MANYTOMANYr �warnr Z_register_attribute�DynamicAttributeImpl�mapperr r )�selfr � r �I/opt/alt/python37/lib64/python3.7/site-packages/sqlalchemy/orm/dynamic.py�init_class_attribute s&