U
    ld                     @   sr   d dl mZ d dlmZmZ ddlmZmZ d dlm	Z	 G dd dej
ZG dd	 d	ejZG d
d dejZdS )    )serializers)MinValueValidatorMaxValueValidator   )	ChallengeChampion)QuizModelSerializerc                   @   s:   e Zd ZdZejedgdZejededgdZ	dS )ChallengeListRequestSerializerzP
    Serializer for validating the request data for the ChallengeList view.
    r   )
validatorsr   d   N)
__name__
__module____qualname____doc__r   IntegerFieldr   skipr   take r   r   1/var/www/wikiazma_server/challenge/serializers.pyr	      s
   r	   c                   @   s>   e Zd ZdZe Zdd Ze Zdd Z	G dd dZ
dS )	ChallengeModelSerializerzI
    Serializer for serializing and deserializing Challenge objects.
    c                 C   s   t |jjS )N)r   quizdataselfobjr   r   r   get_quiz   s    z!ChallengeModelSerializer.get_quizc                 C   s   t |jddjS )NT)many)ChampionModelSerializerchampion_setr   r   r   r   r   get_champions   s    z&ChallengeModelSerializer.get_championsc                   @   s   e Zd ZeZdZdS )zChallengeModelSerializer.Meta__all__N)r   r   r   r   modelfieldsr   r   r   r   Meta"   s   r#   N)r   r   r   r   r   SerializerMethodFieldr   r   Z	championsr   r#   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZG dd dZdS )r   zH
    Serializer for serializing and deserializing Champion objects.
    c                   @   s   e Zd ZeZdZdS )zChampionModelSerializer.Metar    N)r   r   r   r   r!   r"   r   r   r   r   r#   ,   s   r#   N)r   r   r   r   r#   r   r   r   r   r   '   s   r   N)rest_frameworkr   Zdjango.core.validatorsr   r   modelsr   r   quiz.serializersr   
Serializerr	   ModelSerializerr   r   r   r   r   r   <module>   s   