Package: dwll
DWLLDjango Web Launch LibraryDjango Web Launch Library es una librería de elementos utilitarios que le permitirán generar aplicaciones Web (Backend-Frontend) bajo framework Django, de forma rápida y sencilla, asi evitaremos la construcción de elementos habituales en la mayoria de sistemas Web, y aceleraremos el desarrollo de su aplicación. DWLL contiene elementos que cubre los siguientes módulos:VistasFormulariosModelosMensajes y TraduccionesConfiguraciónURLsLoginCaracterísticasModelos y Mixins base para auditar modelos, filtros de activos y permitir soft-deleteVistas virtuales que permiten crear vistas de formato CRUD con muy pocas lineas de codigoSistema de mensajes de texto a ser usados en todo el sitio Web y en el backend, con su respectiva administración de textos por lenguaje para la gestión de su traducción.Sistema de configuraciones para agregar banderas y propiedades administrables a su aplicación Web.Autogenerador de una apĺicación (plantilla) principal que le permitirán arrancar el desarrollo rápidamente.DWLL permite que los desarrolladores tomen un camino claro y directo en la construcción de sus aplicaciones, siguiendo el principio DRY, Don't Repeat Yourself:
Como [Joaquin Medina] escribe ensu BlogDRY, es una filosofía de definición de procesos que
promueve la reducción de la duplicación especialmente
en programación. Según este principio toda pieza de
información nunca debería ser duplicada debido a que
la duplicación incrementa la dificultad en los cambios
y evolución posterior, puede perjudicar la claridad
y crear un espacio para posibles inconsistenciasEsta librería permitirá evitar que rescriba los elementos más comunes en el desarrollo de aplicaciones Web. Proporciona un camino definido a seguir, y con la menor cantidad de código posible.TecnologíaDWLL esta dirigido al desarrollo de aplicaciones Web con Django 4.0 y hace uso de las siguientes librerías:Allauth- Librería para Django que permite el manejo de todo lo relacionado con la autenticación y registro de usuarios.Beautifulsoup4- Librería que permite el manejo de archivos html usados por el autogenerador de DWLLLocust- Librería que permite realizar pruebas, de estress y de carga, a las pantallas de las aplicaciones autogeneradas con DWLLInstalaciónDWLL requiereDjangov4.0+ para funcionar.Si se encuentra usando Windows puede hacer uso de una consola comoGitbashe instalarPython 3en ese entorno.Instale un entorno virtual para instalar Django y DWLL.Linuxsudoapt-getinstallpython3-pip
sudopip3installvirtualenvvirtualenv-ppython3venvsourcevenv/bin/activateWindowspython-mpipinstall--upgradepip
python-mpipinstall--uservirtualenv
python-mvenvve_pruebassourceve_pruebas/Scripts/actívateInstale Django, dependencias, y DWLLpipinstalldjangodjango-allauthlocustbeautifulsoup4
pipinstalldwllCree un proyecto Django, en este ejemplo llamaremos a este proyecto (o el nombre que usted quiera): "myproject"django-admin startproject myproject
cd myprojectIncluir las siguientes aplicaciones en INSTALLED_APPS de su archivo myproject/myproject/settings.py:'allauth',
'allauth.account',
'allauth.socialaccount',
'dwll',Ejecute el generador de su primera aplicación..../manage.py dwll-gen...y siga las instrucciones indicadas en la consola. Puede elegir generar la plantilla de una aplicación con un modelo de ejemplo, o solamente la estructura base de una aplicación para iniciar. En este ejemplo llamaremos a la aplicacion "myapp" y al modelo "mymodel" (El nombre de la aplicación, y el modelo, puede ser el que usted quiera).Al ejecutar la consola, además, se agregarán lineas de código, a su archivo de settings.py y urls.py, que permiten que la nueva aplicación pueda ejecutarse en página de inicio.Nota:Luego puede formatear el código autogenerado a discreción.Una vez generado el proyecto, realizaremos la migracion a la base de datos, esto solo deberá realizarlo si ha seleccionado generar el modelo de ejemplo, caso contrario omita la primera linea del siguiente comando:./manage.py makemigrations myapp
./manage.py migrateAl ejecutar lo anterior, deberia conseguir una salida similar a la siguiente (y adicionalmente un listado de todos los modelos migrados a su base de datos temporal):Migrations for 'myapp':
  myapp/migrations/0001_initial.py
    - Create model MyModelAhora es necesario crear un super usuario para probar la aplicación y la administración del sistema.Linux./manage.py createsuperuserWindowswinpty python manage.py createsuperuserDeberá seguir las instrucciones en consola. Puede ingresar el nombre, email y clave que prefiera, pero deberá recordarlos para poder usar esos datos luego.Finalmente, ejecutaremos el proyecto con el siguiente comando:./manage.py runserverPodremos ingresar a la siguiente URL para ver nuestro nuevo home-pagehttp://localhost:8000. Además, si ha seleccionado generar un modelo de ejemplo, podrá revisar un ejemplo del CRUD autogenerado para dicho modelo en la siguiente dirección:http://localhost:8000/mymodels/(para acceder deberá autenticarse con su usuario generado, o con cualquier usuario registrado en la consola administrativa de Django:http://localhost:8000/admin)PruebasDWLL autogenera dos archivos que permiten al desarrollador probar la funcionalidad y eficiencia de su nueva aplicación.FuncionalidadPara probar la funcionalidad de una algoritmo o un segmento de su codigo ejecute el siguiente comando>./manage.py test myappEstress y CargaPara realizar pruebas de carga y estress a sus pantallas, ejecute los siguientes comandos:cd myapp
locustEsto inicia el servidor de Locust para pruebas de carga y estress. Para iniciar la preparación y ejecución de las pruebas simplemente ingrese a la siguiente dirección:http://localhost:8089/, alli podrá ejecutar cualquier clase de prueba con varios usuarios recurrentes a la vez y medir el rendimiento de su aplicación Web, aún luego de incluir mayor funcionalidad que la autogenerada.LicenciaMIT, UIsraelFree Software, Hell Yeah!