U
    ldD                     @   sx   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
 ddlmZ ddlmZmZ ee
ZG d	d
 d
eZdS )    )#decorator_from_middleware_with_argsmethod_decoratorstatus)APIView)
MyResponse)SerializerValidationMiddleware   )	Challenge)ChallengeListRequestSerializerChallengeModelSerializerc                   @   s(   e Zd ZdZeeedddd ZdS )ChallengeListz*
    API view for listing challenges.
    post)namec                 C   sZ   |j d}|j d}tjd |||  }t|ddj}t|dd|dt	j
d	S )
a  
        Handle POST requests for listing challenges.

        Validates the request data and retrieves a paginated list of challenges.

        Args:
            request: The HTTP request object.

        Returns:
            HTTP response containing the list of challenges.
        skiptakechampion_setT)manyok
Successful)r   messageZ
challengesr   )middleware_serializer_datagetr
   objectsprefetch_relatedallr   datar   r   HTTP_200_OK)selfrequestr   r   Zchallenge_querysetZchallenge_data r    +/var/www/wikiazma_server/challenge/views.pyr      s    zChallengeList.postN)__name__
__module____qualname____doc__r   serializer_decoratorr   r   r    r    r    r!   r      s   r   N)django.utils.decoratorsr   r   rest_frameworkr   rest_framework.viewsr   utils.myresponser   wikiazma.middlewarer   modelsr
   serializersr   r   r&   r   r    r    r    r!   <module>   s   