Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/johanngaviria/python-flask-postgresql-crud
https://github.com/johanngaviria/python-flask-postgresql-crud
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/johanngaviria/python-flask-postgresql-crud
- Owner: JohannGaviria
- Created: 2024-02-23T22:19:44.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-02-24T02:16:54.000Z (10 months ago)
- Last Synced: 2024-02-24T23:33:55.955Z (10 months ago)
- Language: JavaScript
- Size: 104 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Python-Flask-PostgreSQL-CRUD
Este repositorio contiene un CRUD (Crear, Leer, Actualizar, Eliminar) de usuarios desarrollado con Python, Flask, PostgreSQL y JavaScript. La aplicación permite la gestión completa de usuarios, incluyendo la creación, visualización, actualización y eliminación de registros de usuarios en una base de datos PostgreSQL.
---
## Instalación
A continuación se detallan los pasos para instalar y configurar este proyecto en tu entorno local.
### Prerrequisitos
Antes de comenzar, asegúrate de tener instalado lo siguiente en tu sistema:
- Python (versión 3.12.2)
- PostgreSQL (versión 16)
- pip (administrador de paquetes de Python)### Pasos de Instalación
1. **Clonar el repositorio:**
```
git clone https://github.com/JohannGaviria/Python-Flask-PostgreSQL-CRUD.git
```2. **Crear el entorno virtual:**
Utiliza `virtualenv` o otro gestor de entornos virtuales
```
pip install virtualenv
python -m virtualenv nombre_del_entorno
```3. **Instalar las dependencias:**
```
cd tu_proyecto
pip install -r requirements.txt
```4. **Configurar la base de datos:**
- Crea una base de datos PostgreSQL en tu entorno.
- Crea un archivo `.env` en la ruta raiz de tu proyecto y crea las variables de entorno con los datos correpodientes.5. **Ejecutar el servidor:**
```
python .\app.py
```¡Listo! El proyecto ahora debería estar en funcionamiento en tu entorno local. Puedes acceder a él desde tu navegador web visitando `http://localhost:5000`.
---
## Uso
A continuación se detallan las instrucciones sobre cómo utilizar este proyecto una vez que esté instalado y en funcionamiento en tu entorno local.
### Ejecución del Servidor
Para ejecutar el servidor de Flask, simplemente ejecuta el siguiente comando en tu terminal dentro del directorio del proyecto:
```
python .\app.py
```El servidor se iniciará y estará disponible en `http://localhost:5000`.
### Interacción con la Aplicación
Este proyecto proporciona una interfaz de usuario para gestionar usuarios, permitiendo realizar las siguientes acciones:
1. **Agregar un Usuario:**
- Completa el formulario con el nombre de usuario, correo electrónico y contraseña.
- Haz clic en el botón "Agregar Usuario" para guardar los datos en la base de datos.
- Los nuevos usuarios se mostrarán automáticamente debajo del formulario.2. **Editar un Usuario:**
- Para editar un usuario existente, haz clic en el botón "Editar" junto a sus datos.
- Los campos del formulario se llenarán automáticamente con los datos del usuario seleccionado.
- Realiza los cambios necesarios y haz clic en el botón "Actualizar" para guardar los cambios en la base de datos.3. **Eliminar un Usuario:**
- Para eliminar un usuario, haz clic en el botón "Eliminar" junto a sus datos.
- El usuario seleccionado será eliminado de la base de datos y desaparecerá de la lista.### Interfaz
![Interfaz de Usuario](https://github.com/JohannGaviria/Python-Flask-PostgreSQL-CRUD/blob/main/static/img/Interfaz_Usuario.png)
### Detener el Servidor
Para detener el servidor Flask, simplemente presiona `Ctrl + C` en tu terminal. Esto detendrá la ejecución del servidor y liberará el puerto `5000`.
---
## Tecnologías Utilizadas
El proyecto está desarrollado utilizando las siguientes tecnologías y herramientas:
- **Python**: Lenguaje de programación utilizado para el desarrollo del backend de la aplicación.
- **Flask**: Framework web de Python utilizado para construir la aplicación web.
- **PostgreSQL**: Sistema de gestión de bases de datos relacional utilizado para almacenar los datos de usuario.
- **psycopg2**: Adaptador de base de datos PostgreSQL para Python, utilizado para conectarse y realizar operaciones en la base de datos desde la aplicación Flask.
- **dotenv**: Módulo utilizado para cargar variables de entorno desde un archivo `.env`, lo que facilita la configuración de la aplicación en diferentes entornos.
- **Cryptography**: Biblioteca de Python utilizada para cifrar y descifrar contraseñas almacenadas en la base de datos, proporcionando seguridad adicional a los datos sensibles de los usuarios.
- HTML: Lenguajes de marcado para definir la estructura de las páginas web.
- **Bootswatch**: Temas de Bootstrap personalizados utilizados para estilizar la interfaz de usuario de la aplicación web.
- **JavaScript**: Lenguaje de programación utilizado para agregar interactividad a la interfaz de usuario y consumir una API para mostrar datos dinámicamente.Estas tecnologías se combinan para crear una aplicación web funcional que permite a los usuarios registrar, editar y eliminar información de usuario, así como también mostrar datos dinámicamente utilizando JavaScript para consumir la API.
---