o
    =hH                     @   sZ   d dl Z d dlZd dlmZ d dlmZ d dlmZ G dd dej	Z
G dd de
ZdS )	    N)settings)models)gettext_lazyc                       s   e Zd ZdZejeddddZeje	j
dejeddZejed	dd
ZG dd dZ fddZedd Zdd Z  ZS )Tokenz0
    The default authorization token model.
    Key(   T)
max_lengthprimary_key
auth_tokenUser)related_name	on_deleteverbose_nameCreated)auto_now_addc                   @   s&   e Zd ZdejvZedZedZdS )z
Token.Metarest_framework.authtokenr   TokensN)	__name__
__module____qualname__r   INSTALLED_APPSabstract_r   verbose_name_plural r   r   W/var/www/ecommerce/venv/lib/python3.10/site-packages/rest_framework/authtoken/models.pyMeta   s    
r   c                    s"   | j s|  | _ t j|i |S N)keygenerate_keysupersave)selfargskwargs	__class__r   r   r!      s   
z
Token.savec                 C   s   t td S )N   )binasciihexlifyosurandomdecode)clsr   r   r   r   #   s   zToken.generate_keyc                 C      | j S r   )r   r"   r   r   r   __str__'   s   zToken.__str__)r   r   r   __doc__r   	CharFieldr   r   OneToOneFieldr   AUTH_USER_MODELCASCADEuserDateTimeFieldcreatedr   r!   classmethodr   r0   __classcell__r   r   r%   r   r   	   s    


r   c                   @   s*   e Zd ZdZedd ZG dd dZdS )
TokenProxyz7
    Proxy mapping pk to user pk for use in admin.
    c                 C   r.   r   )user_idr/   r   r   r   pk/   s   zTokenProxy.pkc                   @   s0   e Zd Zdejv ZdejvZedZedZ	dS )zTokenProxy.Metar   r   r   N)
r   r   r   r   r   proxyr   r   r   r   r   r   r   r   r   3   s
    

r   N)r   r   r   r1   propertyr=   r   r   r   r   r   r;   +   s
    
r;   )r(   r*   django.confr   	django.dbr   django.utils.translationr   r   Modelr   r;   r   r   r   r   <module>   s    "