[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.138.116.124: ~ $


R6�W��@s�dZddlmZddlZddlTejd�ZGdd�de�ZGdd	�d	e	�Z
yddlZe
�jZ
Wnek
r�YnXdS)
zE
Simple translation of Django model classes to peewee model classes.
�)�partialN)�*zpeewee.playhouse.djpeeweec@seZdZdd�ZdS)�AttrDictcCs||S)N�)�self�attrrr�/djpeewee.py�__getattr__szAttrDict.__getattr__N)�__name__�
__module__�__qualname__r	rrrrrsrc@sUeZdZdd�Zdd�Zdd�Zdddd	d
�Zdd�ZdS)
�DjangoTranslatorcCs|j�|_dS)N)�get_django_field_map�
_field_map)rrrr�__init__szDjangoTranslator.__init__cCs�ddlm}|jtf|jtf|jtf|jtf|jtf|jtf|j	t	f|j
tf|jtf|jtf|j
ttdd�f|jtf|jtf|jjtfgS)Nr)�fields�nullT)�django.db.modelsrZ	AutoFieldZPrimaryKeyFieldZBigIntegerFieldZBooleanFieldZ	CharFieldZ
DateTimeFieldZ	DateFieldZDecimalFieldZ
FilePathFieldZ
FloatField�IntegerFieldZNullBooleanFieldrZ	TextFieldZ	TimeField�relatedZ
ForeignKey�ForeignKeyField)r�djfrrrrsz%DjangoTranslator.get_django_field_mapcCs:d}x-|jD]"\}}t||�r|}PqW|S)N)r�
isinstance)r�field�	convertedZdjango_fieldZpeewee_fieldrrr�
convert_field'szDjangoTranslator.convert_fieldNFcCs;|r||krdS|dkr(d}ddlm}|j}|j|j�rWdSd||j<i}dd�}	x�t|jd|	�D]m}
|j|
�}|tkr�|dkr�|
jj	}|jj}
|
|kr
d||
<|j
||d|dd|d	|�||
dkrOtjd
|
j
|
�td|
j�||
j
<q�|
jjpd|
j�}|jd�r�d
||
j
|jd�f}t||
d|d|
j�||
j
<q�td|
j�||
j
<q�|r�|d|
j�||
j
<q�Wt|jtf|�}|j|j_d|jj_|||j<|r�ydd�|j�D�}Wn+tk
r�dd�|j�D�}YnXxO|D]G\}}|jj|kr�q�|j
||d|dd|d	|�q�WxQ|jD]F}t||jj �sq�|j
|jj!|d|d|d	|�q�WdS)N�r)rcSs|jrdpd|fS)Nrr)r)rrrr�<lambda>Csz3DjangoTranslator._translate_model.<locals>.<lambda>�key�	max_depth�backrefs�excludezCycle detected: %s: %s�	db_column�+z
__%s:%s:%s�related_namez%scSsg|]}||jf�qSr)�model)�.0�frrr�
<listcomp>{s	z5DjangoTranslator._translate_model.<locals>.<listcomp>cSsGg|]=}|js|jr|jr|jr||jjf�qSr)Zone_to_manyZ
one_to_oneZauto_createdZconcreterr%)r&r'rrrr(~s	���)"rrZ_meta�getZobject_name�sortedrrZrelZto�_translate_model�logger�warn�namer�columnr$Zrelated_query_name�endswith�stripr"�typeZModelZdb_tableZdatabaseZ
interpolationZget_all_related_objects�AttributeErrorZ
get_fields�many_to_manyrrZManyToManyFieldZthrough)rr%�mappingrr r!r�optionsZattrsZ	field_keyZmodel_fieldrZ
related_modelZ
model_namer$�klassZall_relatedZrel_objr5rrrr,/s�	


	


	

	z!DjangoTranslator._translate_modelc	
Os�t�}|jdd�}|jdd�}|jdd�}|jdd�}|rm|rmtd��n'|s|d	}n|r�|dkr�d}x0|D](}|j||d|d|d|�q�W|S)av
        Generate a group of peewee models analagous to the provided Django
        models for the purposes of creating queries.

        :param model: A Django model class.
        :param options: A dictionary of options, see note below.
        :returns: A dictionary mapping model names to peewee model classes.
        :rtype: dict

        Recognized options:
            `recurse`: Follow foreign keys (default: True)
            `max_depth`: Max depth to recurse (default: None, unlimited)
            `backrefs`: Follow backrefs (default: False)
            `exclude`: A list of models to exclude

        Example::

            # Map Django models to peewee models. Foreign keys and M2M will be
            # traversed as well.
            peewee = translate(Account)

            # Generate query using peewee.
            PUser = peewee['User']
            PAccount = peewee['Account']
            query = (PUser
                     .select()
                     .join(PAccount)
                     .where(PAccount.acct_type == 'foo'))

            # Django raw query.
            users = User.objects.raw(*query.sql())
        �recurseTrNr Fr!z9Error, you cannot specify a max_depth when recurse=False.rrr))rr*�
ValueErrorr,)	rZmodelsr7r6r9rr r!r%rrr�translate_models�s&!	
	
z!DjangoTranslator.translate_models)r
rrrrrr,r;rrrrr
sdr
)�__doc__�	functoolsr�loggingZpeewee�	getLoggerr-�dictr�objectr
Zdjangor;�	translate�ImportErrorrrrr�<module>s
�


Filemanager

Name Type Size Permission Actions
__init__.cpython-35.opt-1.pyc File 95 B 0644
__init__.cpython-35.pyc File 95 B 0644
apsw_ext.cpython-35.opt-1.pyc File 7.47 KB 0644
apsw_ext.cpython-35.pyc File 7.47 KB 0644
berkeleydb.cpython-35.opt-1.pyc File 3.2 KB 0644
berkeleydb.cpython-35.pyc File 3.2 KB 0644
csv_loader.cpython-35.opt-1.pyc File 135 B 0644
csv_loader.cpython-35.pyc File 135 B 0644
csv_utils.cpython-35.opt-1.pyc File 11.43 KB 0644
csv_utils.cpython-35.pyc File 11.43 KB 0644
dataset.cpython-35.opt-1.pyc File 13.38 KB 0644
dataset.cpython-35.pyc File 13.38 KB 0644
db_url.cpython-35.opt-1.pyc File 3.16 KB 0644
db_url.cpython-35.pyc File 3.16 KB 0644
djpeewee.cpython-35.opt-1.pyc File 5.76 KB 0644
djpeewee.cpython-35.pyc File 5.76 KB 0644
fields.cpython-35.opt-1.pyc File 12.7 KB 0644
fields.cpython-35.pyc File 12.7 KB 0644
flask_utils.cpython-35.opt-1.pyc File 5.93 KB 0644
flask_utils.cpython-35.pyc File 5.97 KB 0644
gfk.cpython-35.opt-1.pyc File 6.02 KB 0644
gfk.cpython-35.pyc File 6.02 KB 0644
hybrid.cpython-35.opt-1.pyc File 2.15 KB 0644
hybrid.cpython-35.pyc File 2.15 KB 0644
kv.cpython-35.opt-1.pyc File 6.77 KB 0644
kv.cpython-35.pyc File 6.77 KB 0644
migrate.cpython-35.opt-1.pyc File 22.68 KB 0644
migrate.cpython-35.pyc File 22.68 KB 0644
pool.cpython-35.opt-1.pyc File 7.96 KB 0644
pool.cpython-35.pyc File 7.96 KB 0644
postgres_ext.cpython-35.opt-1.pyc File 16.86 KB 0644
postgres_ext.cpython-35.pyc File 16.86 KB 0644
read_slave.cpython-35.opt-1.pyc File 1.75 KB 0644
read_slave.cpython-35.pyc File 1.75 KB 0644
reflection.cpython-35.opt-1.pyc File 18.58 KB 0644
reflection.cpython-35.pyc File 18.58 KB 0644
shortcuts.cpython-35.opt-1.pyc File 5.65 KB 0644
shortcuts.cpython-35.pyc File 5.65 KB 0644
signals.cpython-35.opt-1.pyc File 3.04 KB 0644
signals.cpython-35.pyc File 3.04 KB 0644
sqlcipher_ext.cpython-35.opt-1.pyc File 4.52 KB 0644
sqlcipher_ext.cpython-35.pyc File 4.52 KB 0644
sqlite_ext.cpython-35.opt-1.pyc File 36.56 KB 0644
sqlite_ext.cpython-35.pyc File 36.65 KB 0644
sqlite_udf.cpython-35.opt-1.pyc File 16.76 KB 0644
sqlite_udf.cpython-35.pyc File 16.76 KB 0644
test_utils.cpython-35.opt-1.pyc File 4.03 KB 0644
test_utils.cpython-35.pyc File 4.08 KB 0644