
Aplicación CRUD simple de interfaz de línea de comandos para la gestión de usuarios utilizando Python y MongoDB Atlas.
Explorar docs »
Reportar Bug
·
Request Feature
Tabla de contenido
Este proyecto consiste en crear una aplicación CRUD simple de interfaz de línea de comandos utilizando Python y MongoDB Atlas para el programa Talento Cloud Pro de NEXA y AWS.
El objetivo de este proyecto es poner en práctica todo lo aprendido sobre cómo crear un cluster y una base de datos en MongoDB Atlas, cómo crear una conexión, cómo crear, consultar, actualizar y eliminar un usuario (CRUD), cómo trabajar con documentos anidados, funciones y triggers.
El resultado es una pequeña aplicación en Python que permite gestionar usuarios, con las siguientes funcionalidades:
- Crear un usuario
- Consultar un usuario
- Eliminar un usuario
- Actualizar un usuario
Para ejecutar este proyecto localmente, necesitas tener instalado Python 3.9 o superior, así como una cuenta en MongoDB Atlas. Sigue estos pasos para configurar el proyecto:
-
Instala Python 3.9 o superior en tu sistema operativo. Puedes descargarlo desde https://www.python.org/downloads/
-
Crea una cuenta en MongoDB Atlas siguiendo las instrucciones de https://www.mongodb.com/cloud/atlas/register
-
Crea un cluster gratuito en MongoDB Atlas siguiendo las instrucciones de https://docs.atlas.mongodb.com/tutorial/create-new-cluster/
-
Crea una base de datos llamada “anycompany” y una colección llamada “users” en tu cluster siguiendo las instrucciones de https://docs.atlas.mongodb.com/data-explorer/manage-data/
-
Crea un usuario con permisos de lectura y escritura para tu base de datos siguiendo las instrucciones de https://docs.atlas.mongodb.com/security-add-mongodb-users/
-
Obtén la cadena de conexión a tu cluster siguiendo las instrucciones de https://docs.atlas.mongodb.com/connect-to-cluster/#connect-to-a-cluster
- Clona el repositorio:
git clone https://github.com/FreddyPinto/crud-cli-app-python-mongodb.git
- Crea un entorno virtual de Python:
python -m venv env
- Activa el entorno virtual:
- En Windows:
.\env\Scripts\activate
- Unix o MacOS:
env/bin/activate
- En Windows:
- Instala las dependencias:
pip install -r requirements.txt
- Configura las variables de entorno:
- Abre el archivo config.py
- Reemplaza la variable
url
con la cadena de conexión a tu cluster. - Asigna tu passsword a la varibale de entorno
MONGODB_PASSWORD
- Ejecuta la aplicación:
python main.py
La aplicación te mostrará un menú con las siguientes opciones:
A) Crear usuario
B) Consultar usuario
C) Eliminar usuario
D) Actualizar usuario
Para seleccionar una opción, ingresa la letra correspondiente y presiona Enter.
-
Si seleccionas la opción A, la aplicación te pedirá que ingreses los datos del usuario que quieres crear: nombre, edad, email y dirección (opcional). Luego, la aplicación insertará el usuario en la colección “users” de tu base de datos.
-
Si seleccionas la opción B, la aplicación te pedirá que ingreses el nombre del usuario que quieres buscar te mostrará sus datos.
-
Si seleccionas la opción C, la aplicación te pedirá que ingreses el nombre del usuario y lo eliminará de la base de datos.
-
Si seleccionas la opción D, la aplicación te pedirá que ingreses el nombre del usuario que quieres modificar. Luego, te pedirá que ingreses los nuevos datos: nombre, edad, email y dirección. Finalmente, la aplicación actualizará el usuario en la base de datos.
Escribe "q" o "quit" para terminar la ejecución de la aplicación.
Estas son algunas de las mejoras que se podrían implementar en el futuro:
- Añadir validaciones de entrada para evitar errores
- Añadir una interfaz gráfica de usuario (GUI) para mejorar la experiencia de usuario
- Añadir más opciones de búsqueda y filtrado
- Añadir más opciones de reporte y gráficos
- Añadir una funcionalidad para exportar e importar los datos de los usuarios
Consulta los issues abiertos para proponer características (y problemas conocidos).
Las contribuciones son lo que hacen que la comunidad de código abierto sea un lugar increíble para aprender, inspirarse y crear. Cualquier contribución que hagas será muy apreciada.
Si tienes una sugerencia para mejorar este proyecto, haz un fork del repositorio y crea un pull request. También puedes simplemente abrir un issue con la etiqueta “enhancement”. ¡No olvides darle una estrella al proyecto! Gracias de nuevo.
- Haz un fork del Proyecto
- Crea tu feature Branch (
git checkout -b feature/AmazingFeature
) - Haz commit de tus cambios (
git commit -m 'Add some AmazingFeature'
) - Push a la Branch (
git push origin feature/AmazingFeature
) - Abre un Pull Request
Distribuido bajo la licencia MIT. Consulta el archivo LICENSE para más información.
Freddy Pinto - [email protected]
Project Link: https://github.com/FreddyPinto/crud-cli-app-python-mongodb
Quiero agradecer a las siguientes personas y recursos que me han ayudado a realizar este proyecto:
- NEXA y AWS por ofrecer el programa Talento Cloud Pro.
- UBITS y Código Facilito por impartir el módulo de NoSQL con MongoDB y Python.