Repository URL to install this package:
Version:
3.4.35 ▾
|
contego
/
home
/
tvault
/
.virtenv
/
lib
/
python2.7
/
site-packages
/
sqlalchemy
/
orm
/
properties.pyc
|
---|
ó EYc @@ sª d Z d d l m Z d d l m Z m Z d d l m Z d d l m Z d d l m Z d d l m Z m Z d d d d d g Z e j d e f d Y Z d S( sz MapperProperty implementations. This is a private module which defines the behavior of invidual ORM- mapped attributes. i ( t absolute_importi ( t utilt log( t expressioni ( t attributes( t _orm_full_deannotate( t PropComparatort StrategizedPropertyt ColumnPropertyt CompositePropertyt SynonymPropertyt ComparablePropertyt RelationshipPropertyc B@ s¥ e Z d Z d Z d Z d Z e j d d d Z e d Z d Z d Z d Z e j d Z d Z d e j e f d YZ d Z RS(! s Describes an object attribute that corresponds to a table column. Public constructor is the :func:`.orm.column_property` function. t columnt _orig_columnst columnst groupt deferredt instrumentt comparator_factoryt descriptort extensiont active_historyt expire_on_flusht infot doct strategy_classt _creation_ordert _is_polymorphic_discriminatort _mapped_by_synonymt _deferred_column_loaderc O@ s t t | j g | D] } t j | ^ q | _ g | D] } t j t | ^ q? | _ | j d d | _ | j d t | _ | j d t | _ | j d | j j | _ | j d d | _ | j d d | _ | j d t | _ | j d t | _ d | k r2| j d | _ n d | k rS| j d | _ nN xK t | j D]1 } t | d d } | d k rc| | _ PqcqcWd | _ | rÛt d | j j d j t | j f n t j | | j! d | j f d | j f | _" d S( s! Provide a column-level property for use with a Mapper. Column-based properties can normally be applied to the mapper's ``properties`` dictionary using the :class:`.Column` element directly. Use this function when the given column is not directly present within the mapper's selectable; examples include SQL expressions, functions, and scalar SELECT queries. Columns that aren't present in the mapper's selectable won't be persisted by the mapper and are effectively "read-only" attributes. :param \*cols: list of Column objects to be mapped. :param active_history=False: When ``True``, indicates that the "previous" value for a scalar attribute should be loaded when replaced, if not already loaded. Normally, history tracking logic for simple non-primary-key scalar values only needs to be aware of the "new" value in order to perform a flush. This flag is available for applications that make use of :func:`.attributes.get_history` or :meth:`.Session.is_modified` which also need to know the "previous" value of the attribute. .. versionadded:: 0.6.6 :param comparator_factory: a class which extends :class:`.ColumnProperty.Comparator` which provides custom SQL clause generation for comparison operations. :param group: a group name for this property when marked as deferred. :param deferred: when True, the column property is "deferred", meaning that it does not load immediately, and is instead loaded when the attribute is first accessed on an instance. See also :func:`~sqlalchemy.orm.deferred`. :param doc: optional string that will be applied as the doc on the class-bound descriptor. :param expire_on_flush=True: Disable expiry on flush. A column_property() which refers to a SQL expression (and not a single table-bound column) is considered to be a "read only" property; populating it has no effect on the state of data, and it can only return database state. For this reason a column_property()'s value is expired whenever the parent object is involved in a flush, that is, has any kind of "dirty" state within a flush. Setting this parameter to ``False`` will have the effect of leaving any existing value present after the flush proceeds. Note however that the :class:`.Session` with default expiration settings still expires all attributes after a :meth:`.Session.commit` call, however. .. versionadded:: 0.7.3 :param info: Optional data dictionary which will be populated into the :attr:`.MapperProperty.info` attribute of this object. .. versionadded:: 0.8 :param extension: an :class:`.AttributeExtension` instance, or list of extensions, which will be prepended to the list of attribute listeners for the resulting descriptor placed on the class. **Deprecated.** Please see :class:`.AttributeEvents`. R R t _instrumentR R R R R R R s. %s received unexpected keyword argument(s): %ss , R N(# t superR t __init__R t _labeledR R R t popt NoneR t FalseR t TrueR t __class__t ComparatorR R R R R R R t reversedt getattrt TypeErrort __name__t joint sortedt keysR t set_creation_ordert _strategy_lookupR ( t selfR t kwargst ct colR ( ( sN /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/properties.pyR! , s@ K%( % s sqlalchemy.orm.states sqlalchemy.orm.strategiesc C@ s+ | j j | j j | j | j | j S( N( t InstanceStatet" _instance_level_callable_processort parentt class_managert LoadDeferredColumnst key( R2 t statet strategies( ( sN /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/orm/properties.pyt&