Quickstarters
CRUD Samples
Cómo Crear una Aplicación CRUD Básica con Golang?
34 min
introducción en esta guía, aprenderás a desarrollar una aplicación crud fundamental (crear, leer, actualizar y eliminar) utilizando golang este tutorial cubre las operaciones esenciales necesarias para gestionar datos de manera efectiva, aprovechando back4app como un servicio backend robusto ahora construirás un servidor golang que se comunica con back4app a través de llamadas restful para empezar, crearás y configurarás un proyecto de back4app llamado basic crud app golang este proyecto servirá como la base de datos central para tu aplicación a continuación, definirás un esquema de base de datos escalable estableciendo colecciones y campos detallados, ya sea manualmente o con la ayuda del agente de ia de back4app esta configuración asegura que tu sistema esté preparado para una manipulación eficiente de datos a través de operaciones crud después de eso, activarás la aplicación de administración de back4app, una herramienta fácil de usar con capacidades de arrastrar y soltar para gestionar tus colecciones esto simplifica la creación, lectura, actualización y eliminación de registros finalmente, integrarás tu backend de golang con back4app utilizando apis rest, mientras implementas controles de seguridad robustos y autenticación de usuarios donde sea necesario al final de este tutorial, tendrás un servidor web golang listo para producción que admite operaciones crud básicas y se conecta sin problemas con una base de datos gestionada por back4app puntos clave entender cómo construir aplicaciones crud con golang y gestionar datos utilizando back4app obtener información sobre cómo configurar una arquitectura de backend escalable e integrarla con una api rest de golang aprender a usar la aplicación de administración de back4app para una gestión de datos sin complicaciones descubrir técnicas de implementación, incluyendo la contenedorización para lanzamientos rápidos requisitos previos antes de comenzar, asegúrate de tener lo siguiente una cuenta de back4app con un nuevo proyecto configurado para orientación, consulta introducción a back4app https //www back4app com/docs/get started/new parse app un entorno de desarrollo golang instala go https //golang org/doc/install (se recomienda la versión 1 16 o posterior) comprensión básica de golang, apis rest y servidores http consulta la documentación de golang https //golang org/doc/ si es necesario paso 1 – configuración del proyecto creando un nuevo proyecto en back4app inicia sesión en tu cuenta de back4app haz clic en el botón “nueva aplicación” en tu panel ingresa el nombre del proyecto basic crud app golang y sigue las instrucciones para crear tu proyecto crear nuevo proyecto después de que el proyecto esté configurado, lo verás listado en tu panel de back4app, listo para soportar tu configuración de backend paso 2 – diseño del esquema de la base de datos definiendo tu estructura de datos para una aplicación crud básica, crearás varias colecciones aquí hay ejemplos de las colecciones y campos que podrías necesitar 1\ colección de artículos esta colección almacena detalles sobre cada artículo campo tipo de dato descripción id objectid clave primaria generada automáticamente título cadena el nombre o título del artículo descripción cadena una descripción concisa del artículo creado en fecha marca de tiempo que indica la creación del elemento actualizado en fecha marca de tiempo que indica la última actualización 2\ colección de usuarios esta colección retiene datos de usuario y detalles de autenticación campo tipo de dato descripción id objectid clave primaria generada automáticamente nombre de usuario cadena identificador único para el usuario correo electrónico cadena la dirección de correo electrónico única del usuario hash de contraseña cadena contraseña encriptada para iniciar sesión creado en fecha marca de tiempo cuando se creó la cuenta actualizado en fecha marca de tiempo cuando la cuenta fue actualizada por última vez puedes configurar manualmente estas colecciones a través del panel de control de back4app creando una nueva clase para cada una y definiendo las columnas crear nueva clase puedes agregar nuevos campos eligiendo el tipo de dato, nombrando el campo, estableciendo valores predeterminados e indicando si es obligatorio crear columna aprovechando el agente ai de back4app para la creación de esquemas el agente ai de back4app, accesible a través de tu panel de control, puede crear automáticamente el esquema de tu base de datos a partir de un aviso descriptivo esta función agiliza la configuración del proyecto y asegura consistencia cómo usar el agente ai lanzar el agente de ia abre tu panel de back4app y localiza el agente de ia en la configuración del proyecto describe tu modelo de datos ingresa un aviso detallando las colecciones y campos que necesitas revisar y aplicar el agente genera las definiciones de las colecciones revisa y confirma los cambios ejemplo de aviso create the following collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated primary key) \ title string \ description string \ created at date (auto generated) \ updated at date (auto updated) 2\) collection users \ fields \ id objectid (auto generated primary key) \ username string (unique) \ email string (unique) \ password hash string \ created at date (auto generated) \ updated at date (auto updated) este método ahorra tiempo y ayuda a garantizar que tu esquema sea robusto y optimizado paso 3 – activando la aplicación de administración y realizando operaciones crud descripción general de la aplicación de administración la aplicación de administración de back4app es una interfaz intuitiva sin código que te permite gestionar tus datos de backend proporciona una interfaz de arrastrar y soltar para crear, leer, actualizar y eliminar registros habilitando la aplicación de administración accede al menú “más” en tu panel de back4app selecciona “aplicación de administración” y luego haz clic en “habilitar aplicación de administración ” configura tus credenciales de administrador creando el usuario administrador inicial, lo que también configura roles y colecciones del sistema habilitar aplicación de administración después de la activación, inicia sesión en la aplicación de administración para gestionar tu base de datos panel de administración de la aplicación uso de la aplicación de administración para tareas crud dentro de la aplicación de administración, puedes crear registros usa el botón “agregar registro” en una colección (por ejemplo, artículos) para insertar nuevos datos leer/actualizar registros haz clic en un registro para ver o modificar sus detalles eliminar registros elimina registros que son obsoletos con la opción de eliminar esta interfaz simplifica la gestión de datos con un diseño intuitivo de arrastrar y soltar paso 4 – integrando golang con back4app ahora que tu backend está configurado y gestionado a través de la aplicación de administración, es hora de conectar tu aplicación golang a back4app utilizando puntos finales restful configurando tu proyecto golang inicializa el directorio de tu proyecto golang crea una carpeta llamada basic crud app golang y ejecuta go mod init basic crud app golang instala los paquetes necesarios para este tutorial, la biblioteca estándar es suficiente, pero puedes optar por agregar bibliotecas externas según sea necesario código de ejemplo para recuperar y mostrar elementos a continuación se muestra un ejemplo de un programa golang que recupera elementos de tu colección de elementos de back4app package main import ( 	"encoding/json" 	"fmt" 	"io/ioutil" 	"log" 	"net/http" ) const ( 	appid = "your application id" 	restapikey = "your rest api key" ) type item struct { 	objectid string `json "objectid"` 	title string `json "title"` 	description string `json "description"` 	createdat string `json "createdat"` 	updatedat string `json "updatedat"` } type itemsresponse struct { 	results \[]item `json "results"` } func fetchitems() { 	url = "https //parseapi back4app com/classes/items" 	req, err = http newrequest("get", url, nil) 	if err != nil { 	 log fatalf("error creating request %v", err) 	} 	req header add("x parse application id", appid) 	req header add("x parse rest api key", restapikey) 	client = \&http client{} 	resp, err = client do(req) 	if err != nil { 	 log fatalf("error fetching items %v", err) 	} 	defer resp body close() 	body, err = ioutil readall(resp body) 	if err != nil { 	 log fatalf("error reading response %v", err) 	} 	var itemsresp itemsresponse 	if err = json unmarshal(body, \&itemsresp); err != nil { 	 log fatalf("error parsing json %v", err) 	} 	for , item = range itemsresp results { 	 fmt printf("title %s, description %s\n", item title, item description) 	} } func main() { 	fmt println("fetching items from back4app ") 	fetchitems() } este programa envía una solicitud get al endpoint de items de back4app, decodifica la respuesta json y imprime el título y la descripción de cada elemento ampliando la funcionalidad crud puedes implementar funciones en golang de manera similar para crear un elemento envía una solicitud post con los datos del elemento actualizar un elemento usa una solicitud put o post para modificar registros existentes eliminar un elemento emite una solicitud delete para eliminar registros integra estas funciones en un servidor http completo utilizando el net/http paquete de go para manejar rutas para tus operaciones crud paso 5 – asegurando tu backend implementando controles de acceso mejora la seguridad de tus datos aplicando listas de control de acceso (acl) al realizar operaciones crud por ejemplo, asegúrate de que solo los usuarios autorizados puedan modificar o eliminar datos configurando acl apropiadas a través del panel de control de back4app y aplicándolas a través de tu api de golang configurando permisos a nivel de clase ajusta los permisos a nivel de clase (clp) en la interfaz de back4app para restringir el acceso a los datos a usuarios autenticados o roles específicos paso 6 – autenticación de usuario configuración de la gestión de cuentas back4app utiliza la clase user de parse para la autenticación en tu aplicación golang, maneja el registro y el inicio de sesión de usuarios enviando solicitudes a los puntos finales apropiados de back4app esto puede incluir registro de usuario una solicitud post con nombre de usuario, correo electrónico y contraseña inicio de sesión de usuario verificación de credenciales y gestión de tokens de sesión integra estos puntos finales dentro de tu servidor golang para asegurar tus operaciones crud paso 7 – desplegando tu aplicación golang 7 1 preparando tu compilación de producción compila tu código golang en el directorio de tu proyecto, ejecuta go build o crud app verifica el binario asegúrate de que el ejecutable ( crud app ) se ejecute sin errores 7 2 organizando tus archivos de proyecto la estructura de tu proyecto podría parecerse a basic crud app golang/ ├── main go ├── handlers go ├── models go ├── go mod └── readme md 7 3 contenerizando con docker si prefieres la contenerización, incluye un dockerfile como \# use an official golang image to build the app from golang 1 18 alpine as builder \# set the working directory workdir /app \# copy go mod and go sum files copy go mod go sum / \# download dependencies run go mod download \# copy the source code copy \# build the application run go build o crud app \# use a minimal image to run the app from alpine\ latest workdir /root/ copy from=builder /app/crud app expose 8080 cmd \[" /crud app"] 7 4 desplegando tu aplicación despliega en tu plataforma preferida ya sea que elijas un vps, un proveedor de nube, o los servicios de despliegue de back4app, sube tu binario o contenedor docker monitorea el despliegue revisa los registros y verifica que tus puntos finales de api sean accesibles prueba la aplicación accede a la url de tu servidor para confirmar que todos los puntos finales crud operan como se espera paso 8 – conclusión y próximos pasos ¡gran trabajo! has construido con éxito una aplicación crud básica utilizando golang y back4app configuraste un proyecto llamado basic crud app golang , diseñaste colecciones para items y users, y conectaste tu backend de golang a back4app a través de apis rest próximos pasos mejora tu api agrega más endpoints para vistas detalladas de los ítems, capacidades de búsqueda o actualizaciones en tiempo real implementa seguridad adicional explora métodos de autenticación avanzados y asegura aún más tus endpoints explora recursos adicionales consulta la documentación de back4app https //www back4app com/docs y los documentos de golang https //golang org/doc/ para obtener más información detallada al seguir este tutorial, ahora tienes la base para construir aplicaciones crud robustas y escalables con golang, integradas sin problemas con back4app ¡feliz codificación!