Secciones

Entradas del blog


Django : Proyecto login, registro, abc base de datos y ajax

Sin comentarios

Introducción

Django es un framework de aplicaciones web gratuito y de código abierto (open source) escrito en Python. Un framework web es un conjunto de componentes que te ayudan a desarrollar sitios web más fácil y rápidamente.
https://www.djangoproject.com/download/

Iniciando en el aprendizaje de django, desarrollé éste proyecto, en el que incluí algunas de las funciones que se requieren en proyectos que se usan en producción. Éste proyecto no es para usarse en producción, es solo para aprender, y ver una forma de hacer las cosas utilizando o no ajax, una idea sobre todo. Sobre todo le será útil a quién comience a desarrollar en éste framework.

Funciones

  • Login
  • Registro
  • Actualización de perfil
  • Imagen de perfil
  • Búsqueda simple con scroll infinito y ajax
  • Uso de ajax en guardado de datos
  • Paginación usando ajax
  • Eliminación de registros usando ajax
  • Actualización de registros sin ajax
  • Subida de imágenes con ajax
  • Uso de mariadb

Requerimientos

El proyecto se desarrolló bajo fedora 34, sin embargo, lo pueden probar en otros entornos, siempre y cuando se instalen las dependencias y paquetes necesarios para su funcionamiento.

  • Fedora 34 (no probado en otro SO)
  • Bootstrap 5.0.1
  • Jquery 3.6.0
  • Django 3.2.3
  • Python 3.9.5
  • mariadb 10.4

Instalación de dependencias en Fedora 34

sudo dnf install python3-devel mysql-devel python3-virtualenv
export MYSQLCLIENT_CFLAGS=`pkg-config mysqlclient --cflags`
export MYSQLCLIENT_LDFLAGS=`pkg-config mysqlclient --libs`

Instalación de XAMPP o mariadb de manera local, cualquiera de las dos opciones es viable, pero sugiero que sea usando XAMPP, es más fácil.

https://blog.linuxitos.com/post/instalar-xampp-8-0-3-fedora-34

Una vez instalado xampp y configurado los usuarios y contraseñas, es necesario crear la base de datos con el nombre django_app1

Configurar el proyecto

Clonar proyecto

El proyecto se pude descargar de aquí https://gitlab.com/ferm/djando-crud-ajax-login

git clone git@gitlab.com:ferm/djando-crud-ajax-login.git

Crear el entorno virtual

virtualenv -p python3 .

Activar el entorno de python

source bin/activate

Instalar requerimientos

pip3 install -r requirements.txt

Configurar archivo settings.py para base de datos

DATABASES = {
'default': {
	'ENGINE': 'django.db.backends.mysql',
	'NAME': 'django_app1',
	'USER': 'ususus',
	'PASSWORD': 'asdhadjkhsd',
	'HOST': '127.0.0.1',
	'PORT': '3306',
	'OPTIONS': {
		'charset': 'utf8',
		'use_unicode': True,
		'init_command': 'SET '
		'storage_engine=INNODB,'
		'character_set_connection=utf8,'
		'collation_connection=utf8_bin'
	},
	'TEST_CHARSET': 'utf8',
	'TEST_COLLATION': 'utf8_general_ci',
}
}

Configurar la conexión a la base de datos, de acuerdo a los datos propios que se usen:

Generar archivo de migraciones

python manage.py makemigrations

Migrar a la base de datos

python manage.py migrate

Iniciar servidor

python manage.py runserver

Al entrar a la url, del proyecto http://127.0.0.1:8000

Y si hay errores o algo, favor de dejar un comentario y espero poder ayudar.

Comentarios:

Entradas del blog
Redes sociales
Accesos directos