Con este Crud aprenderas a realizar las operaciones básicas como: crear, leer, actualizar y eliminar registros en una base de datos MySQL, también ofrece la posibilidad de cargar datos desde un archivo Excel en la base de datos MySQL, así como exportar registros de la base de datos a archivos Excel, entre muchas cosas mas.
-
Crear un entorno virtual, hay muchas formas
Opción 1: Crear entorno virtual con el paquete virtualenv Si no tienes instalado virtualenv puedes instalarlo de forma global en el sistema atraves de https://pypi.org/project/virtualenv/ pip install virtualenv ->Instalar de forma global virtualenv env ->Crear entorno virtualenv --version ->Ver la versión de virtualenv Opción 2: Crear un entorno virtual con el paquete que ya viene por defecto en las ultimas versiones de Python python -m venv env
-
Activar entorno virtual
. env/Script/activate ->para Windows . env/bin/activate -> Para Mac deactivate -->Para desactivar mi entorno virtual
-
Instalar Django desde el manejador de paquete de Python Pip, ya dentro del entorno virtual.
python -m pip install Django pip install Django Nota: para instalar Django en una version especifica pip install Django==4.2.4
-
Ver la versión de Django instalada en el proyecto
python -m django --version
-
Instalar Driver para conectar Gestor de BD MySQL con Django
pip install mysqlclient
-
Instalar el paquete (biblioteca) Pillow, esto con el fin de poder procesar la subida de imagen en el servidor
Pillow es la librería que nos permitirá usar el campo ImageField para poder guardar imágenes https://pypi.org/project/Pillow/ pip install Pillow
-
Instalar el paquete (biblioteca) openpyxl y pandas
pip install openpyxl pip install pandas
-
Crear el proyecto con Django
`django-admin startproject project_core .` El punto . es crucial le dice al script que instale Django en el directorio actual Ya en este punto se puede correr el proyecto que a creado Django, python manage.py runserver
-
Crear mi primera aplicación en Django
python manage.py startapp empleados
-
Instalar nuestra aplicación (empleados) ya creada en el proyecto, en el archivo settings.py
archivo settings.py INSTALLED_APPS = [ ----, 'empleados', ]
-
Crear una clase en models.py la cual reprtesentara mi tabla en BD,(bd_django) preferiblemente los modelos se declaran en singular
class Empleado(models.Model): nombre_empleado = models.CharField(max_length=200) apellido_empleado = models.CharField(max_length=100) email_empleado = models.EmailField(max_length=50) edad_empleado = models.IntegerField() genero_empleado = models.CharField(max_length=80, choices=generos) salario_empleado = models.DecimalField( max_digits=10, decimal_places=2, null=True, blank=True) foto_empleado = models.ImageField( upload_to='fotos_empleados/', null=True, blank=True) created_at = models.DateTimeField(auto_now_add=True, null=True, blank=True) updated = models.DateTimeField(auto_now_add=False, auto_now=True)
-
crear la Base de Datos (bd_django_mysql) en MySQL
-
Editar el archivo settings.py del proyecto, cambiando los parametros de conexión a MySQL
` DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', #ENGINE es motor de BD 'NAME': 'bd_django_mysql', 'USER': 'root', 'PASSWORD': '', 'HOST': '127.0.0.1', 'PORT': '3306', } } `
-
Crear las migraciones y correrlas
python manage.py makemigrations -> Creando migraciones python manage.py migrate -> Correr migraciones
-
Correr el proyecto
python manage.py runserver Revisar la consola y visitar la URL http://127.0.0.1:8000
-
Crear el archivo urls.py en la aplicación (bd_django_mysql)
from django.urls import path from . import views urlpatterns = [ path('', views.inicio, name='inicio'), path('registrar_empleado/', views.registrar_empleado, name='registrar_empleado'), path('empleados/', views.listar_empleados, name='listar_empleados'), ]
-
Conectar las URLS de mi aplicación con el projecto, para esto vamos al archivo uls.py del projecto from django.urls import path, include
urlpatterns = [ path('admin/', admin.site.urls), path("", include('empleados.urls')) ]
-
Crear la carpeta 'templates' dentro de la aplicación donde estarán mis archivos.html
-
Crear la carpeta 'static' dentro de mi aplicacion, aqui estaran archivos estaticos (css, js, imagenes, etc..)
-
Crear la carpeta media, para almacenar las imagenes del empleado
-
Correr archivo requirement.txt
pip install -r requirements.txt
-
Crear el archivo requirements.txt para tener todos los paquetes del proyecto a la mano
pip freeze > requirements.txt Nota: para instalar los paquetes solo basta ejecutar pip install -r requirements.txt
Comenta a otros sobre este proyecto 📢
Invita una cerveza 🍺 o un café ☕
Paypal iamdeveloper86@gmail.com
Da las gracias públicamente 🤓.