Entonces, en el enfoque de Schema 1st, puedes construir e implementar un backend solo escribiendo tu SDL de GraphQL. Conéctalo a GitHub y GraphBase se encarga del resto. Hay muchas características diferentes que te animo a explorar, pero en este video, exploraremos algunas de ellas. Y, al final, utilizaremos una plataforma de gestión de usuarios para autorizar las solicitudes a nuestro backend de GraphBase. Hay muchas otras cosas en las que estamos trabajando en GraphBase, y pronto te permitiremos incorporar otras fuentes de datos para trabajar con tu backend.
Así que, vamos a sumergirnos. Aquí tengo una aplicación de Next.js. Voy a usar el comando mpx para inicializar un nuevo proyecto de GraphBase en la raíz de mi proyecto de Next.js. Esto muestra cómo puedes agregar GraphBase como un backend a tu proyecto existente. Aquí podemos definir todos nuestros modelos usando SDL de GraphQL. Usamos la directiva personalizada model para indicarle a GraphBase que genere una API para nosotros, y luego podemos usar los tipos escalares y otras directivas como unique aquí, y en este caso, para la URL de una publicación, podemos usar una directiva opt-in para una mayor validación con el escalar URL. Luego podemos agregar relaciones entre nuestros modelos, y luego podemos ejecutar el comando mpx graphbase dev para ejecutar una API local de GraphBase en localhost 4000. Si abrimos esto y echamos un vistazo al esquema y la documentación, podemos ver que todo esto se generó automáticamente para nosotros desde la CLI de GraphBase. Y todo esto funciona localmente y te proporciona una API para crear, actualizar, eliminar y leer datos. Entonces, en este caso, estamos creando una nueva publicación, podemos proporcionar una URL personalizada y podemos obtener esos datos de vuelta. Si intentamos crear esto nuevamente, podemos ver aquí que la directiva URL y la directiva at-unique han entrado en acción. No podemos crear una publicación duplicada con la misma URL porque dijimos que era única.
Ahora, pasemos a crear otra publicación y esta vez crearemos un comentario en línea como una relación cuando creamos una nueva publicación. Entonces, aquí, le daremos un texto y enviaremos esa mutación. A continuación, creemos un nuevo comentario, pero esta vez tomaremos el ID de una publicación existente y ahora vincularemos este comentario cuando lo creemos. Ahora veamos cómo obtener todas nuestras publicaciones utilizando la consulta de colección. Podemos optar por utilizar la paginación y, para cada uno de nuestros nodos, podemos obtener los campos que nos gustan. Podemos llevar esto un paso más allá obteniendo los comentarios relacionados de una publicación, lo cual también admite paginación. Finalmente, podemos recuperar registros singulares de nuestros datos en nuestro backend utilizando el ID o cualquier campo único. Tomemos el ID de una de nuestras publicaciones y ahora usemos la mutación para actualizar. Podemos actualizar utilizando el ID o nuevamente, utilizando ese campo único. Y aquí podemos proporcionar un nuevo valor de título para esta publicación. Ahora, si actualizamos nuestra consulta al obtener todas nuestras publicaciones y obtenemos el ID de un comentario, ahora podemos usar la mutación que se genera automáticamente para eliminar uno de nuestros comentarios. Podemos proporcionar tanto el ID del comentario como, si tuviéramos algún campo único, podríamos proporcionarlo dentro de los argumentos. A continuación, creemos un repositorio de GitHub y enviemos todo nuestro código a GitHub.
Comments