Quickstarters
CRUD Samples
Cómo crear una aplicación CRUD con Solid?
34 min
descripción general en este tutorial, aprenderás a desarrollar una aplicación crud completa (crear, leer, actualizar, eliminar) utilizando solidjs usaremos back4app como nuestro servicio backend, lo que te permitirá gestionar datos sin esfuerzo esta guía te llevará a través de la creación de un proyecto en back4app, elaborando un esquema de datos flexible y codificando operaciones crud dentro de una aplicación solidjs inicialmente, configurarás un proyecto de back4app llamado basic crud app solidjs este proyecto proporciona un entorno de almacenamiento de datos robusto y sin esquema definirás tu modelo de datos creando colecciones y campos, ya sea manualmente o con la ayuda del agente ai de back4app a continuación, manejarás tus datos backend utilizando la fácil de usar aplicación administrativa de back4app finalmente, integrarás tu aplicación solidjs con back4app a través del sdk de javascript de parse (o mediante apis rest/graphql según sea necesario) mientras aplicas controles de acceso seguros al final de este tutorial, tendrás una aplicación solidjs lista para producción que realiza funciones crud esenciales junto con autenticación de usuario segura y gestión de datos lo que aprenderás cómo crear una aplicación crud basada en solidjs con un backend moderno y sin código mejores prácticas para diseñar un backend escalable y conectarlo con tu aplicación solidjs cómo navegar por la aplicación de administración de back4app para operaciones de datos simplificadas estrategias de implementación, incluida la contenedorización con docker, para lanzar tu aplicación solidjs sin problemas 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 configurado para solidjs recomendamos usar visual studio code o cualquier editor preferido, junto con node js (v14 o superior) conocimientos básicos de solidjs, javascript moderno y apis restful refresca tus conocimientos con la documentación de solidjs https //www solidjs com/docs si es necesario paso 1 – inicialización del proyecto configurando tu proyecto de 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 solidjs y sigue las instrucciones para completar la configuración crear nuevo proyecto después de crear tu proyecto, aparecerá en tu panel de control, sentando las bases para tu backend paso 2 – creando tu esquema de datos diseñando la estructura de datos para esta aplicación crud, configurarás varias colecciones en tu proyecto de back4app a continuación se presentan ejemplos de las principales colecciones y campos requeridos 1\ colección artículos esta colección almacena información sobre cada artículo campo tipo propósito id objectid identificador único generado automáticamente título cadena nombre del artículo descripción cadena descripción breve del artículo creadoen fecha marca de tiempo cuando se agregó el artículo actualizadoen fecha marca de tiempo para la última actualización 2\ colección usuarios esta colección gestiona las credenciales de usuario y los datos de autenticación campo tipo propósito id objectid identificador único generado automáticamente nombre de usuario cadena identificador único de usuario correo electrónico cadena dirección de correo electrónico única hashdecontraseña cadena contraseña encriptada para acceso seguro creadoen fecha marca de tiempo de creación de la cuenta actualizadoen fecha marca de tiempo para la última actualización de la cuenta puedes crear estas colecciones y agregar campos a través del panel de control de back4app crear nueva clase para agregar un nuevo campo, elija el tipo de dato apropiado, establezca el nombre del campo, asigne un valor predeterminado si es necesario y márcalo como obligatorio si es necesario crear columna uso del asistente de ia de back4app para la creación de esquemas el asistente de ia integrado de back4app puede crear automáticamente tu esquema de datos basado en tus instrucciones, ahorrándote tiempo y asegurando consistencia cómo usar el asistente de ia abre el asistente de ia accede a él a través de la configuración de tu proyecto en el panel de control de back4app detalla tu modelo de datos ingresa una descripción detallada de las colecciones y campos requeridos confirma la configuración revisa el esquema sugerido y aprueba para finalizar la configuración ejemplo de solicitud create two collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated) \ title string \ description 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 método impulsado por ia agiliza su proceso de creación de esquemas, asegurando un modelo de datos optimizado paso 3 – activar el panel de administración y gestionar operaciones de datos introducción al panel de administración el panel de administración de back4app proporciona una interfaz sin código para una gestión eficiente del backend sus características de arrastrar y soltar facilitan la realización de tareas crud como agregar, ver, actualizar y eliminar registros habilitando el panel de administración vaya al menú “más” en su panel de back4app seleccione “aplicación de administración” y haga clic en “habilitar aplicación de administración ” configure sus credenciales de administrador creando una cuenta de administrador inicial esto también establecerá los roles necesarios (como b4aadminuser ) y colecciones del sistema habilitar aplicación de administración después de la activación, inicie sesión en el panel de administración para gestionar los datos de su aplicación panel de aplicación de administración manejo de operaciones crud en el panel de administración dentro del panel, puede agregar registros utilice la función “agregar registro” en cualquier colección (por ejemplo, artículos) para ingresar nuevos datos ver/editar registros haga clic en una entrada para inspeccionar o modificar sus detalles eliminar registros elimine entradas obsoletas o no deseadas esta interfaz simplifica la gestión de datos, ofreciendo una experiencia eficiente e intuitiva paso 4 – conectando su aplicación solidjs con back4app con el backend en su lugar, el siguiente paso es vincular su aplicación solidjs a back4app opción a usando el sdk de javascript de parse instala el sdk de javascript de parse ejecuta el siguiente comando en el directorio de tu proyecto npm install parse configura parse en tu aplicación crea un archivo de configuración (por ejemplo, parseconfig js ) // parseconfig js import parse from 'parse'; parse initialize("your application id", "your javascript key"); parse serverurl = 'https //parseapi back4app com'; export default parse; 3\ implement crud operations in solidjs here’s an example solidjs service for managing items ```javascript // itemsservice js import parse from ' /parseconfig'; export const fetchitems = async () => { try { const items = parse object extend("items"); const query = new parse query(items); const results = await query find(); return results; } catch (error) { console error("error retrieving items ", error); } }; export const additem = async (title, description) => { const items = parse object extend("items"); const item = new items(); item set("title", title); item set("description", description); try { await item save(); console log("item added successfully "); } catch (error) { console error("error adding item ", error); } }; export const updateitem = async (objectid, newtitle, newdescription) => { const items = parse object extend("items"); const query = new parse query(items); try { const item = await query get(objectid); item set("title", newtitle); item set("description", newdescription); await item save(); console log("item updated successfully "); } catch (error) { console error("error updating item ", error); } }; export const deleteitem = async (objectid) => { const items = parse object extend("items"); const query = new parse query(items); try { const item = await query get(objectid); await item destroy(); console log("item deleted successfully "); } catch (error) { console error("error deleting item ", error); } }; opción b utilizando apis rest o graphql si prefieres no usar el sdk de parse, puedes ejecutar operaciones crud a través de rest por ejemplo, así es como puedes obtener elementos utilizando la api rest export const fetchitemsrest = async () => { try { const response = await fetch("https //parseapi back4app com/classes/items", { method "get", headers { "x parse application id" "your application id", "x parse rest api key" "your rest api key", }, }); const data = await response json(); return data results; } catch (error) { console error("error fetching items via rest ", error); } }; integra estas llamadas a la api en tus componentes de solidjs según sea necesario paso 5 – mejorando la seguridad del backend configurando listas de control de acceso (acls) protege tus datos configurando acls para cada objeto por ejemplo, para restringir un elemento de modo que solo su propietario pueda acceder a él import parse from ' /parseconfig'; export const addprivateitem = async (title, description, owner) => { const items = parse object extend("items"); const item = new items(); item set("title", title); item set("description", description); const acl = new parse acl(); acl setreadaccess(owner, true); acl setwriteaccess(owner, true); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); item setacl(acl); try { await item save(); console log("private item added "); } catch (error) { console error("error saving private item ", error); } }; configurando permisos a nivel de clase (clps) configura clps en tu panel de back4app para hacer cumplir las restricciones de acceso predeterminadas, asegurando que solo los usuarios autorizados puedan interactuar con ciertas colecciones paso 6 – implementando la autenticación de usuarios gestionando cuentas de usuario back4app utiliza la colección de usuario de parse incorporada para la autenticación en tu aplicación solidjs, maneja el registro y el inicio de sesión de usuarios de la siguiente manera import parse from ' /parseconfig'; export const registeruser = async (username, password, email) => { const user = new parse user(); user set("username", username); user set("password", password); user set("email", email); try { await user signup(); console log("user registered successfully!"); } catch (error) { console error("registration error ", error); } }; export const loginuser = async (username, password) => { try { const user = await parse user login(username, password); console log("logged in as ", user get("username")); } catch (error) { console error("login error ", error); } }; se puede adoptar una estrategia similar para la gestión de sesiones, restablecimientos de contraseñas y otras características de autenticación paso 7 – desplegando tu aplicación solidjs back4app simplifica el proceso de despliegue puedes desplegar tu aplicación solidjs a través de varios métodos, incluyendo docker 7 1 preparando tu aplicación construye tu aplicación usa tu gestor de paquetes para compilar tu aplicación solidjs por ejemplo npm run build verifica la salida de construcción asegúrate de que la carpeta de construcción contenga todos los archivos necesarios 7 2 organizando la estructura de tu proyecto una estructura de proyecto típica podría verse así basic crud app solidjs/ \| public/ \| | index html \| src/ \| | components/ \| | | app jsx \| | services/ \| | | parseconfig js \| | | itemsservice js \| | | authservice js \| | index jsx \| package json \| readme md 7 3 dockerizando tu aplicación si deseas contenerizar tu aplicación, crea un dockerfile en la raíz del proyecto \# use a lightweight node image from node 16 alpine \# set the working directory workdir /app \# copy package files and install dependencies copy package json package lock json / run npm install \# copy the rest of the application code copy \# build the application run npm run build \# expose the port (adjust if needed) expose 3000 \# serve the built application cmd \["npx", "serve", "build"] 7 4 despliegue con back4app web deployment conecta tu repositorio de git asegúrate de que tu proyecto solidjs esté alojado en github configura el despliegue en tu panel de back4app, elige despliegue web , vincula tu repositorio (por ejemplo, basic crud app solidjs ), y selecciona la rama apropiada establece los comandos de construcción define el comando de construcción (por ejemplo, npm run build ) y especifica el directorio de salida despliega tu aplicación haz clic en desplegar y monitorea los registros hasta que tu aplicación esté en línea paso 8 – reflexiones finales y mejoras futuras ¡gran trabajo! has creado con éxito una aplicación crud de solidjs integrada con back4app configuraste un proyecto llamado basic crud app solidjs , definiste tus colecciones de items y users, y gestionaste los datos a través del panel de administración de back4app además, conectaste tu aplicación solidjs utilizando el sdk de javascript de parse (o rest/graphql) y aplicaste medidas de seguridad sólidas próximos pasos expande la aplicación agrega características avanzadas como filtros de búsqueda, vistas detalladas de elementos o actualizaciones de datos en tiempo real mejora el backend experimenta con funciones en la nube, integraciones de api de terceros o gestión de acceso basada en roles aprende más sumérgete en la documentación de back4app https //www back4app com/docs y tutoriales adicionales de solidjs para refinar aún más tu aplicación ¡feliz codificación y buena suerte con tu proyecto crud de solidjs!