Quickstarters
CRUD Samples
How to Build a CRUD App with Flutter?
29 min
descripción general en esta guía, desarrollarás una aplicación flutter que maneja operaciones crud esenciales crear, leer, actualizar y eliminar, aprovechando back4app como tu servicio backend te guiaremos a través de la configuración de un proyecto back4app, diseñando un esquema de datos flexible e integrando tu aplicación flutter con el backend utilizando el sdk de parse para flutter inicialmente, crearás un nuevo proyecto back4app llamado basic crud app flutter este proyecto proporciona una solución de almacenamiento de datos confiable para tu aplicación móvil luego definirás tu modelo de datos creando colecciones y campos, ya sea manualmente o con la ayuda del agente de ia de back4app a continuación, utilizarás la intuitiva aplicación administrativa de back4app para gestionar tus datos sin problemas finalmente, conectarás tu aplicación flutter a back4app utilizando el parse server sdk flutter paquete, lo que permitirá operaciones crud seguras y eficientes al final de este tutorial, tendrás una aplicación flutter lista para producción capaz de realizar funciones crud básicas junto con autenticación de usuario segura y gestión de datos perspectivas clave construir una aplicación flutter que interactúe con un backend poderoso aprender a diseñar un esquema de backend escalable en back4app utilizar la aplicación de administración de back4app para una gestión de datos sin esfuerzo implementar medidas de seguridad robustas, incluyendo acls y autenticación de usuarios requisitos previos antes de comenzar, asegúrate de tener una cuenta de back4app con un proyecto activo ¿necesitas ayuda? visita introducción a back4app https //www back4app com/docs/get started/new parse app un entorno de desarrollo flutter instala flutter y elige un ide como visual studio code o android studio un conocimiento básico de flutter, dart y rest apis consulta la documentación de flutter https //flutter dev/docs si es necesario paso 1 – inicialización del proyecto creando un nuevo proyecto en back4app inicia sesión en tu cuenta de back4app haz clic en el botón “nueva app” en tu panel de control nombra tu proyecto basic crud app flutter y sigue las instrucciones para completar la configuración crear nuevo proyecto después de que tu proyecto sea creado, aparecerá en tu panel de control, listo para la configuración del backend paso 2 – creando el modelo de datos configurando tus estructuras de datos para esta aplicación de flutter, establecerás varias colecciones dentro de tu proyecto de back4app a continuación se presentan ejemplos de las colecciones clave y los campos necesarios para soportar la funcionalidad crud 1\ colección de productos esta colección almacena detalles sobre productos individuales campo tipo descripción id objectid identificador único asignado automáticamente nombre cadena el nombre del producto detalles cadena una breve descripción del producto creadoen fecha marca de tiempo cuando se agregó el producto actualizadoen fecha marca de tiempo cuando el producto fue actualizado por última vez 2\ colección de usuarios esta colección gestiona las credenciales de usuario y los detalles de autenticación campo tipo descripción id objectid identificador único generado automáticamente nombre de usuario cadena nombre de usuario único para el usuario correo electrónico cadena dirección de correo electrónico única del usuario hashdecontraseña cadena contraseña encriptada para una autenticación segura creadoen fecha marca de tiempo cuando se creó la cuenta actualizadoen fecha marca de tiempo cuando la cuenta fue actualizada por última vez puedes crear estas colecciones manualmente en el panel de control de back4app crear nueva clase para agregar campos, simplemente selecciona el tipo de dato, especifica el nombre del campo, establece un valor predeterminado si es necesario y márcalo como obligatorio crear columna usando el agente de ia de back4app para la creación de esquemas el agente de ia integrado en back4app puede generar automáticamente tu esquema de datos basado en tu descripción, agilizando el proceso de configuración cómo usar el agente de ia accede al agente de ia abre tu panel de back4app y localiza el agente de ia en la configuración de tu proyecto describe tu esquema proporciona un aviso detallado que describa las colecciones y campos que necesitas revisa y confirma una vez que el agente de ia procese tu entrada, revisa el esquema propuesto y confirma para aplicarlo ejemplo de aviso create the following collections in my back4app project 1\) collection products \ fields \ id objectid (auto generated) \ name string \ details string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) collection users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) este enfoque ahorra tiempo y asegura que tu esquema de datos sea tanto consistente como optimizado paso 3 – activando la aplicación de administración y gestionando operaciones crud introducción a la aplicación de administración la aplicación de administración de back4app ofrece una interfaz sin código para gestionar tus datos de backend su funcionalidad de arrastrar y soltar te permite realizar operaciones crud como crear, leer, actualizar y eliminar registros sin esfuerzo habilitando la aplicación de administración navega al menú “más” en tu panel de back4app selecciona “admin app” y luego haz clic en “habilitar admin app ” configura tus credenciales de administrador creando una cuenta de administrador inicial, que también configurará roles como b4aadminuser habilitar admin app después de habilitar, inicia sesión en la admin app para gestionar los datos de tu aplicación panel de admin app gestión de operaciones crud dentro de la admin app, puedes crear entradas usa la opción “agregar registro” en una colección (por ejemplo, productos) para insertar nuevos datos ver y editar entradas haz clic en un registro para inspeccionar detalles o actualizar campos eliminar entradas elimina registros que ya no son necesarios esta interfaz fácil de usar simplifica el proceso de gestión de tus datos de backend paso 4 – conectando tu app de flutter con back4app con tu backend configurado, es hora de integrar tu aplicación flutter con back4app usando el sdk de parse para flutter agrega la dependencia abre tu pubspec yaml e incluye el paquete parse server sdk flutter dependencies flutter sdk flutter parse server sdk flutter ^3 1 0 inicializa parse en tu app en tu main dart , inicializa parse con tus credenciales de back4app import 'package\ flutter/material dart'; import 'package\ parse server sdk flutter/parse server sdk dart'; future\<void> main() async { widgetsflutterbinding ensureinitialized(); await parse() initialize( 'your application id', 'https //parseapi back4app com', clientkey 'your flutter key', debug true, ); runapp(myapp()); } class myapp extends statelesswidget { @override widget build(buildcontext context) { return materialapp( title 'basic crud app', home homepage(), ); } } implementando operaciones crud crea un archivo dart (por ejemplo, product service dart ) para manejar tus acciones crud import 'package\ parse server sdk flutter/parse server sdk dart'; class productservice { future\<list\<parseobject>> fetchproducts() async { final query = querybuilder\<parseobject>(parseobject('products')); final response = await query query(); if (response success && response results != null) { return response results as list\<parseobject>; } return \[]; } future\<void> addproduct(string name, string details) async { final product = parseobject('products') set('name', name) set('details', details); final response = await product save(); if (response success) { print('product added successfully '); } else { print('error adding product ${response error? message}'); } } future\<void> updateproduct(string objectid, string newname, string newdetails) async { final query = querybuilder\<parseobject>(parseobject('products')); query whereequalto('objectid', objectid); final response = await query first(); if (response != null && response success) { final product = response results! first as parseobject; product set('name', newname) set('details', newdetails); final saveresponse = await product save(); if (saveresponse success) { print('product updated '); } } } future\<void> deleteproduct(string objectid) async { final query = querybuilder\<parseobject>(parseobject('products')); query whereequalto('objectid', objectid); final response = await query first(); if (response != null && response success) { final product = response results! first as parseobject; final deleteresponse = await product delete(); if (deleteresponse success) { print('product deleted '); } } } } este archivo de servicio permite que tu interfaz de usuario de flutter interactúe sin problemas con tu backend de back4app alternativa usar rest/graphql en flutter si decides no usar el sdk de parse, puedes hacer llamadas rest utilizando paquetes como http sin embargo, se recomienda el sdk de parse para una experiencia más integrada paso 5 – asegurando tu backend listas de control de acceso (acls) para proteger tus datos, configura acls para tus objetos por ejemplo, crea un producto que sea visible solo para su creador import 'package\ parse server sdk flutter/parse server sdk dart'; future\<void> addprivateproduct(string name, string details, parseuser owner) async { final product = parseobject('products') set('name', name) set('details', details); final acl = parseacl(owner) setpublicreadaccess(false) setpublicwriteaccess(false); product setacl(acl); final response = await product save(); if (response success) { print('private product created '); } else { print('error ${response error? message}'); } } permisos a nivel de clase (clps) en tu panel de control de back4app, configura clps para hacer cumplir las reglas de seguridad predeterminadas, asegurando que solo los usuarios autenticados puedan acceder o modificar colecciones específicas paso 6 – implementando la autenticación de usuarios configurando el registro y acceso de usuarios back4app utiliza la clase parse user para manejar la autenticación en tu aplicación flutter, implementa el registro y acceso de usuarios de la siguiente manera import 'package\ parse server sdk flutter/parse server sdk dart'; class authservice { future\<void> registeruser(string username, string password, string email) async { final user = parseuser createuser(username, password, email); final response = await user signup(); if (response success) { print('user registered successfully!'); } else { print('registration failed ${response error? message}'); } } future\<void> loginuser(string username, string password) async { final user = await parseuser login(username, password); if (user success) { print('logged in as ${user result? username}'); } else { print('login error ${user error? message}'); } } } esta configuración cubre el registro de usuarios, inicio de sesión y gestión adicional de autenticación para su aplicación flutter paso 7 – conclusión y mejoras futuras ¡felicidades! has construido con éxito una aplicación crud basada en flutter integrada con back4app en este tutorial, creaste un proyecto llamado basic crud app flutter , definiste colecciones para productos y usuarios, y gestionaste tu backend utilizando la admin app además, conectaste tu aplicación flutter con back4app utilizando el parse server sdk flutter paquete mientras implementabas una seguridad robusta y autenticación de usuarios próximos pasos expande tu aplicación agrega características como búsqueda avanzada, vistas detalladas o actualizaciones en tiempo real mejora la funcionalidad del backend explora funciones en la nube, integraciones de api de terceros o controles de acceso basados en roles más granulares continúa aprendiendo revisa la documentación de back4app https //www back4app com/docs y tutoriales adicionales para optimizar aún más tu aplicación ¡feliz codificación y los mejores deseos en tu viaje de desarrollo con flutter!