Quickstarters
CRUD Samples
Building a Basic CRUD Application with Polymer: A Comprehensive Walkthrough
42 min
descripción general en esta guía, aprenderás a desarrollar una aplicación crud (crear, leer, actualizar, eliminar) completamente funcional utilizando polymer este recorrido demuestra cómo realizar operaciones esenciales para gestionar y modificar datos comenzarás configurando un proyecto de back4app, titulado basic crud app polymer , que servirá como el backend para tu aplicación a continuación, crearás un modelo de datos escalable delineando colecciones y campos precisos, ya sea manualmente o con la ayuda del agente ai de back4app, para asegurar que tu base de datos esté optimizada para operaciones crud luego, aprovecharás la aplicación administrativa de back4app, una interfaz de gestión fácil de usar con arrastrar y soltar, para agilizar tus operaciones de datos finalmente, integrarás tu frontend de polymer con back4app utilizando apis rest/graphql mientras refuerzas la seguridad del backend con controles de acceso sofisticados al final de este tutorial, habrás construido una aplicación web lista para producción que soporta operaciones crud básicas e incluye autenticación de usuarios y características robustas de gestión de datos lo que aprenderás desarrollar una aplicación crud que gestione datos de manera eficiente con un backend confiable diseñar un backend escalable y conectarlo con un frontend basado en polymer utilizar una interfaz de administración de arrastrar y soltar (back4app admin app) para facilitar las operaciones de datos desplegar tu aplicación utilizando técnicas modernas, incluyendo la contenedorización con docker requisitos previos antes de comenzar, asegúrate de tener una cuenta de back4app con un proyecto activo para asistencia, consulta introducción a back4app https //www back4app com/docs/get started/new parse app una configuración de desarrollo de polymer usa polymer cli o herramientas similares y verifica que node js (v14 o posterior) esté instalado un conocimiento básico de javascript, polymer y rest apis puedes consultar la documentación de polymer https //www polymer library polymer project org/3 0/docs/devguide/feature overview para más detalles paso 1 – configurando tu proyecto iniciando un nuevo proyecto de back4app accede a tu cuenta de back4app selecciona la opción “nueva app” desde tu panel de control asigna el nombre del proyecto basic crud app polymer y sigue las instrucciones para finalizar la creación del proyecto crear nuevo proyecto después de completar estos pasos, tu proyecto será visible en el panel de control de back4app, formando la columna vertebral de tu configuración de backend paso 2 – creando el esquema de tu base de datos estructurando tu modelo de datos para esta aplicación crud, se necesitan varias colecciones a continuación se presentan colecciones de ejemplo junto con campos y sus respectivos tipos, lo que te ayudará a diseñar un esquema de base de datos robusto capaz de manejar operaciones crud 1 colección de artículos campo tipo descripción id objectid clave primaria generada automáticamente título cadena el título del artículo descripción cadena una breve descripción del artículo creado en fecha marca de tiempo que indica la creación del elemento actualizado en fecha marca de tiempo para la actualización más reciente 2 colección de usuarios campo tipo detalles id objectid clave primaria generada automáticamente nombre de usuario cadena identificador único para el usuario correo electrónico cadena dirección de correo electrónico única hash de contraseña cadena contraseña encriptada para seguridad creado en fecha marca de tiempo cuando se creó la cuenta actualizado en fecha marca de tiempo para la última actualización de la cuenta puedes crear manualmente estas colecciones en el panel de control de back4app estableciendo nuevas clases y agregando columnas correspondientes crear nueva clase agregue fácilmente nuevos campos eligiendo un tipo de dato, nombrando el campo y especificando cualquier valor predeterminado o parámetros requeridos crear columna aprovechando el agente ai de back4app para la creación de esquemas el agente ai de back4app, accesible desde su panel de control, genera automáticamente un esquema de base de datos basado en un aviso que detalla sus colecciones y campos esta función ahorra mucho tiempo, asegurando que su backend esté precisamente adaptado para operaciones crud cómo utilizar el agente ai lanza el agente ai accédelo a través de la configuración de su proyecto o del menú principal en el panel de control de back4app ingresa los detalles de tu esquema proporcione un aviso descriptivo que enumere las colecciones y campos que necesita revisa y confirma después de que el agente ai procese su solicitud, revise el esquema generado y aplíquelo a su proyecto ejemplo de aviso create the following collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated) \ title string \ description string \ created at date (auto generated) \ updated at date (auto updated) 2\) collection users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ password hash string \ created at date (auto generated) \ updated at date (auto updated) usar el agente ai asegura que su esquema sea tanto consistente como optimizado para los requisitos de su aplicación 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 ofrece una interfaz sin código para la gestión del backend su diseño intuitivo de arrastrar y soltar simplifica las operaciones crud, permitiéndole crear, ver, actualizar y eliminar registros sin esfuerzo activando la aplicación de administración ve 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 un usuario administrador inicial, que también establecerá roles (como b4aadminuser ) y colecciones del sistema habilitar admin app después de la activación, inicia sesión en la admin app para gestionar tus datos de backend panel de admin app gestionando datos usando la admin app dentro de la admin app, puedes agregar registros usa el botón “agregar registro” en cualquier colección (por ejemplo, artículos) para crear nuevas entradas ver/modificar registros haz clic en un registro para inspeccionar sus detalles o para editar sus campos eliminar registros utiliza la función de eliminar para eliminar datos que ya no son necesarios esta interfaz mejora enormemente la usabilidad al simplificar todas las funciones crud paso 4 – conectando polymer con back4app con tu backend configurado a través de la admin app, es hora de vincular tu frontend de polymer a back4app opción a utilizando apis rest/graphql usaremos apis rest o graphql para realizar operaciones crud por ejemplo, para recuperar artículos usando rest // example rest call to get items const fetchitems = async () => { try { const response = await fetch('https //parseapi back4app com/classes/items', { headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key' } }); const data = await response json(); console log('items fetched ', data results); } catch (error) { console error('error fetching items ', error); } }; fetchitems(); integra llamadas api similares en tus elementos de polymer según sea necesario paso 5 – reforzando la seguridad del backend implementación de listas de control de acceso (acls) protege tus datos aplicando acls a los objetos por ejemplo, para crear un elemento restringido async function createrestricteditem(data, owner) { const itemdata = { title data title, description data description }; // configure acl to permit only the owner access const acl = { " " { read false, write false }, \[owner id] { read true, write true } }; try { const response = await fetch('https //parseapi back4app com/classes/items', { method 'post', headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key', 'content type' 'application/json' }, body json stringify({ itemdata, acl acl }) }); const result = await response json(); console log('restricted item created ', result); } catch (error) { console error('error creating item ', error); } } configuración de permisos a nivel de clase (clps) dentro del panel de control de back4app, configura clps para cada colección para definir reglas de acceso predeterminadas esta configuración asegura que solo los usuarios autorizados puedan acceder a datos sensibles paso 6 – autenticación de usuarios en polymer estableciendo cuentas de usuario back4app utiliza la clase user de parse para gestionar la autenticación en tu proyecto de polymer, implementa el registro y el inicio de sesión de usuarios como se demuestra a continuación // example function for user registration using rest api async function signupuser(username, password, email) { try { const response = await fetch('https //parseapi back4app com/users', { method 'post', headers { 'x parse application id' 'your application id', 'x parse rest api key' 'your rest api key', 'content type' 'application/json' }, body json stringify({ username, password, email }) }); const result = await response json(); alert('user registered successfully!'); console log(result); } catch (error) { alert('registration error ' + error message); } } se puede adoptar un enfoque similar para la gestión de inicio de sesión y sesiones, con características adicionales como la verificación de correo electrónico y la configuración de restablecimiento de contraseña a través del panel de control de back4app paso 7 – desplegando tu frontend de polymer con despliegue web la función de despliegue web de back4app te permite alojar tu aplicación de polymer sin problemas al vincular tu repositorio de github sigue estos pasos para desplegar tu aplicación 7 1 construyendo tu versión de producción abre el directorio de tu proyecto en una terminal ejecuta el comando de construcción polymer build este comando genera una build carpeta con todos los archivos estáticos optimizados verifica la construcción asegúrate de que la build carpeta contenga un index html archivo junto con los directorios de activos necesarios 7 2 organizando y subiendo tu código fuente tu repositorio debe contener el código fuente completo de tu frontend de polymer una estructura de directorio de ejemplo podría verse así basic crud app polymer frontend/ ├── node modules/ ├── public/ │ └── index html ├── src/ │ ├── my app js │ ├── api config js │ └── components/ │ ├── items list js │ └── auth form js ├── polymer json └── readme md ejemplo src/api config js // src/api config js export const app id = 'your application id'; export const rest api key = 'your rest api key'; export const api url = 'https //parseapi back4app com'; ejemplo src/my app js import { polymerelement, html } from '@polymer/polymer/polymer element js'; class myapp extends polymerelement { static get template() { return html` \<style> / your css styles here / \</style> \<h1>item manager\</h1> \<items list>\</items list> \<auth form>\</auth form> `; } } customelements define('my app', myapp); ejemplo src/my app js comprometiendo tu código a github inicializa un repositorio git (si no se ha hecho ya) git init prepara tus archivos git add confirma tus cambios git commit m "compromiso inicial para el frontend de polymer" crea un repositorio de github nómbralo basic crud app polymer frontend sube tu código a github git remote add origin https //github com/tu nombre de usuario/basic crud app polymer frontend git git push u origin main 7 3 conectando tu repositorio de github con el despliegue web accede al despliegue web inicia sesión en back4app, navega a tu proyecto ( basic crud app polymer ), y selecciona la función de despliegue web integra github sigue las instrucciones para conectar tu cuenta de github, permitiendo que back4app acceda a tu repositorio selecciona tu repositorio y rama elige el repositorio (por ejemplo, basic crud app polymer frontend ) y la rama apropiada (por ejemplo, main ) 7 4 configurando los ajustes de despliegue especifique los siguientes detalles comando de construcción si la build carpeta no está preconstruida, establezca el comando (por ejemplo, polymer build ) back4app ejecutará esto durante el despliegue directorio de salida establezca esto en build para que back4app identifique sus archivos de sitio estático variables de entorno incluya cualquier variable necesaria (como claves api) en la configuración de despliegue 7 5 contenerizando su aplicación polymer con docker si docker es su opción de despliegue, incluya un dockerfile en su repositorio similar a # use an official node image for building from node 16 alpine as builder \# set working directory workdir /app \# copy dependency files copy package json / \# install dependencies run npm install \# copy the project files copy \# build the polymer app run polymer build \# use nginx to serve the built files from nginx\ stable alpine copy from=builder /app/build /usr/share/nginx/html expose 80 cmd \["nginx", " g", "daemon off;"] integre este dockerfile en su proyecto y seleccione docker como la opción de despliegue en back4app 7 6 desplegando tu aplicación haz clic en el botón desplegar una vez que tus configuraciones estén confirmadas, presiona desplegar observa el proceso de construcción back4app obtendrá tu código, ejecutará el comando de construcción y desplegará tu aplicación en contenedor recupera tu url después del despliegue, recibirás una url donde tu aplicación polymer es accesible 7 7 probando tu despliegue visita la url abre el enlace proporcionado en tu navegador verifica la funcionalidad verifica que todas las rutas se carguen correctamente y que los activos como css, javascript e imágenes se muestren como se espera soluciona problemas si ocurren problemas, revisa los registros de despliegue y la configuración de integración de github en back4app paso 8 – conclusión y direcciones futuras ¡gran trabajo! has construido con éxito una aplicación crud completa utilizando polymer y back4app tu proyecto, basic crud app polymer , ahora cuenta con colecciones bien definidas para items y usuarios, gestionadas sin problemas a través de la aplicación de administración, con un frontend de polymer seguro e integrado próximos pasos mejorar el frontend agrega características como vistas detalladas de los ítems, funcionalidad de búsqueda o actualizaciones en tiempo real expandir funcionalidad integra lógica adicional del backend con cloud functions o apis de terceros explorar más consulta la documentación de back4app https //www back4app com/docs para configuraciones más avanzadas y optimizaciones de rendimiento con estas habilidades, estás bien preparado para construir backends crud escalables y desplegar aplicaciones web robustas con polymer y back4app ¡feliz codificación!