Este proyecto esta hecho con graphql sobre el framework fastAPI
Ejecute el comando siguiente sobre el directorio raiz del proyecto para entorno linux
- crear un virtual environment
python -m venv venv
- Activar el entorno
source venv/bin/activate
- instalar las dependencias
pip install -r requitements.txt
- ejecute el siguiente comando para levantar un servidor de uvicorn en su maquina.
uvicorn main:app --reload
En el navegador ingresé a la siguiente dirección:
http://localhost:8000/book
En esta dirección vera el entorno de ejecución de consultas de graphql en el cual puede realizar las siguientes operaciones:
- Crear un libro
mutation Ex {
createBook(
title: "El librote",
subtitle: "el libro mas grande",
authors: "Ferchito, Fernando",
categories: "ciencia ficción, Acción",
editor: "me",
description: "some description"
image: "http://images.com.co/image1.png"
)
- Listar todos los libros
query Ex {
books
{
id,
title,
subtitle,
authors,
categories,
editor,
description,
image
}
}
- Traer un soo libro por su ID
query Ex {
book(id: 1)
{
id,
title,
subtitle,
authors,
categories,
editor,
description,
image
}
}
- Actualizar la información de un libro
mutation Ex {
updateBook(
id: 1,
title: "El librotote",
subtitle: "gran viaje",
authors: "Fercho",
categories: "ciencia ficción",
editor: "me",
description: "some description"
image: "http://images.com.co/image1.png"
)
}
- Eliminar un libro
mutation Ex {
deleteBook(id: 1)
}
- Consultar un libro por un atributo especifico
query Ex {
queryBook(field: "authors", value: "Ferchito"){
id,
title,
subtitle,
authors,
categories,
editor,
description,
image
}
}
- Consultar libros por cualquiera de sus atributos
query Ex {
findBook(value: "Harry") {
title,
subtitle,
authors,
categories,
editor,
description,
image
}
}
https://bks_api-1-k1625606.deta.app/book