Buenas prácticas y tutoriales

Crear una aplicación web de agenda con Couchbase como back-end

Michael Aboagye es un ingeniero de software/seguridad backend residente en Ghana. Está interesado en la creación de servicios backend seguros con Python.

Michael K. Aboagye

En este tutorial, veremos cómo podemos construir una aplicación web de diario basada en el framework flask con Couchbase como servidor backend.

Al final de este tutorial, serás capaz de construir una aplicación web sencilla con el framework Flask para enviar los datos de los usuarios a un servidor Couchbase. Además, aprenderás a configurar un servidor Couchbase.

Requisitos previos

Necesitas los siguientes paquetes para ejecutar o clonar el proyecto desde GitHub.

Flask framework es un micro framework escrito en Python. Es un micro framework porque no viene con un formulario de validación, mecanismo de autenticación, y así sucesivamente. Te permite personalizar las aplicaciones a tu manera.

Una plantilla Jinja es simplemente un archivo de texto que contiene variables y expresiones, las cuales son reemplazadas cuando una plantilla es renderizada o mostrada.

Couchbase Server es una base de datos de documentos NoSQL escalable. Utilizaremos el servidor Couchbase para almacenar los datos de los usuarios.

Crear un entorno virtual

En primer lugar, cree un directorio para alojar el entorno virtual utilizando mkdir mando.

El siguiente comando crea un directorio como proyecto web y lo cambia por el proyecto web directorio.

A continuación, cambie al directorio para activar el entorno virtual mediante los siguientes comandos:

Una vez dentro del entorno virtual, podemos instalar paquetes sin miedo a entrar en conflicto con los paquetes del sistema.

Instalar Flask Framework y otros paquetes

En esta sección, instalaremos el framework Flask escrito en Python y otros paquetes necesarios para el proyecto.

Vamos a instalar los paquetes que necesitamos para este proyecto usando pip y dpkg.

En este tutorial, vamos a ejecutar Couchbase Server a través de Docker. Necesitas tener Docker en tu localhost o máquina de desarrollo para poder extraiga o descargue imágenes de Couchbase desde dockerhub.

Navegue hasta el terminal y escriba lo siguiente para acceder al repositorio de DockerHub:

A continuación, se le pedirá que proporcione sus credenciales antes de poder acceder o "extraer" imágenes de DockerHub.

Es necesario ejecutar los comandos Docker como usuario root.

Sin embargo, si prefieres instalar Couchbase Server manualmente, Couchbase proporciona dos formas de instalación para distribuciones basadas en Debian y Redat. Puede consultarlo en Couchbase.

Descargar Python SDK 2.5 para Couchbase Server

 

Para acceder al servidor Couchbase, necesitamos descargar el cliente Couchbase SDK para acceder a un cluster Couchbase. Couchbase proporciona SDK para lenguajes de programación como Python, .NET y Java. Vamos a descargar e instalar Couchbase SDK para Python usando pip:

Configurar e iniciar Couchbase Server

Una vez que hayas sacado las imágenes de Couchbase Server de DockerHub, podemos crear y ejecutar un nuevo contenedor usando el siguiente comando:

docker run: Este comando crea una capa contenedora sobre la imagen de Couchbase y la inicia.

-d : La bandera -d significa que el contenedor se ejecuta como un demonio.

-name : Este es el nombre para el nuevo contenedor

-p : Esta bandera es para la asignación de puertos

Ahora estamos ejecutando el servidor Couchbase en un contenedor.

Dentro de su navegador, visite http://localhost:8091 en su máquina para configurar el servidor Couchbase.

Como puede ver, tenemos opciones para crear un nuevo clúster o unirnos a un clúster existente. Vamos a elegir la opción de crear un nuevo clúster único. Establecer un nombre de Cluster, crear un nombre de usuario para Admin y una contraseña de 6 caracteres como se muestra a continuación:

Vamos con la configuración por defecto. Necesitamos establecer el nombre de host o la dirección IP para nuestro nuevo cluster. No cambiaremos el disco de datos, la ruta del disco de índices y la ruta del disco de análisis para el propósito de este proyecto.

Además, no es necesario modificar las cuotas de memoria a menos que no dispongas de suficiente RAM. Por último, se nos presentan dos opciones: iniciar el servidor Couchbase con la configuración predeterminada o configurar la memoria y los servicios.

Haga clic en el botón que le permite configurar la memoria y los servicios para Couchbase Server.

 

La sección Nombre de host o dirección IP le permite establecer un nombre de host, por ejemplo localhost o 192.168.15.12. La ruta del disco de datos le permite definir la ruta.

Entonces crear un cubo llamado "users-data" a través de la consola web de Couchbase.

Escribir código del lado del servidor para la aplicación Agenda

 

Still dentro de su entorno virtual, cree un archivo llamado app.py. Dentro del archivo app.py, copia y pega el siguiente código:

En el código anterior, hemos importado el framework Flask, y el cliente Couchbase para Python. A continuación, nos conectamos al bucket Users-data a través del método Couchbase client connect. A continuación, creamos una ruta para la página de inicio y la página create-memo para los usuarios.

También podemos crear una ruta para la página de mensajes. Esta página mostrará los mensajes enviados por un usuario. Dentro del archivo "app.py", escribe el siguiente código para recuperar un mensaje de usuario específico del servidor Couchbase:

Dentro del directorio de su proyecto, cree un subdirectorio utilizando el comando mkdir como se muestra a continuación:

Dentro del directorio templates, crea los archivos home.html, savedmemo.html, y postmemo.html con el comando touch:

Pegue el siguiente código dentro del archivo home.html:

 

Pegue el siguiente código dentro del archivo memo.html:

Dentro del archivo savedmemo.html, pegue el siguiente código para generar un formulario que mostrará formularios con mensajes guardados:

 

Ejecute el siguiente comando para iniciar la aplicación basada en flask como se muestra a continuación:

Abra su navegador y navegue hasta la siguiente url para visualizar la página donde puede enviar los detalles al servidor Couchbase:

http://localhost.com/home/create-memo

Además, si quieres navegar a la página donde se mostrarán los mensajes de los usuarios y pueden ser editados o modificados y guardados antes de enviarlos al Servidor Couchbase, utiliza lo siguiente:

 

http://localhost.com/home/saved-messages/:5000

 

Conclusión

En este tutorial, aprendimos a construir una aplicación simple de diario basada en Flask con Couchbase Server como backend. donde los usuarios pueden enviar datos a través de un formulario a un servidor Couchbase.

Puede descargar o clonar el proyecto completo desde GitHub si quieres probarlo.

Este artículo ha sido publicado por Couchbase Programa de escritura comunitaria

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Laura Czajkowski, Directora de la Comunidad de Desarrolladores, Couchbase

Laura Czajkowski es la Snr. Developer Community Manager en Couchbase supervisando la comunidad. Es responsable de nuestro boletín mensual para desarrolladores.

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.