示例#1
0
class QueryPet(graphene.ObjectType):
    """
    Tipo especial de consulta que obtem dados do servidor.
    """

    collection = graphene.List(
        PetType,
        description="Listar todos os pets de um usuário do pet guard.",
        identify=String(required=True,
                        description="Identificador do usuário."),
        search=String(
            description=
            "Procurar um pet pelo seu nome ou pelos dados da ong na qual ele pertence (nome, email ou cnpj)."
        ),
        kind=String(description="Filtrar os pets do tipo DOG ou CAT."),
        is_adoption=Boolean(
            description="Filtra somente os pets que estão em adoção."),
        is_adopted=Boolean(description="Filtra por pets adotados."),
        skip=Int(description="Pula os primeiros N usuários."),
        first=Int(description="Pega os primeiros N usuários após o skip."))

    instance = graphene.Field(
        PetType,
        description="Pegar os dados de um pet especifico do pet guard.",
        identify=String(required=True,
                        description="Identificador do usuário."),
        pet_id=String(required=True, description="Identificador do pet."))

    def resolve_collection(self, info, identify, **kwargs):
        """
        Cada campo é manipulado por meio de resolvers, que retornam um valor.
        """

        pets = ListPetResolver(identify, kwargs).get_result()

        return pets

    def resolve_instance(self, info, identify, pet_id):
        """
        Pega um usuário especifico
        """

        pet = FetchPetResolver(identify, pet_id).get_result()

        return pet
示例#2
0
    class Arguments:
        """
        Define os dados que você pode enviar para o servidor.
        """

        identify = Int(description="Identificador do pet.", required=True)

        data = UpdatePetInput(description="Corpo da requisição.",
                              required=True)
示例#3
0
class Media(ObjectType):
    class Meta:
        interfaces = (Node, )

    id = ID(required=True)
    created = DateTime()
    modified = DateTime()

    series = String()
    order = Int()
    name = String()

    type = String()
    chapters = List(String)

    external_url = String()
示例#4
0
 def parse_literal(node):
     return_value = Int.parse_literal(node)
     if return_value is not None:
         if return_value >= 0:
             return return_value
    class Arguments:
        """
        Define os dados que você pode enviar para o servidor.
        """

        identify = Int(description="Identificador do pet.", required=True)
示例#6
0
class Connection(relay.Connection):
    class Meta:
        abstract = True

    count = Int()