martes, 5 de noviembre de 2019

Proyecto universidad (Django, Python y sqlite3).

En esta ocasión creamos un proyecto que usa 3 clases dentro de un modelo, el cual se conecta entre si a través de ciertos comandos.


Seguimos los mismos pasos que los proyectos anteriores.

Primero creamos nuestro proyecto.
django-admin startproject alumnos

Después accedemos a nuestra carpeta recién creada.
cd alumnos

Al crear un nuevo archivo, nos pedirá realizar las migraciones necesarias. Este comando necesita ser ejecutado desde nuestra carpeta alumnos recién creada.
python manage.py migrate

Vamos a settings y en installed apps ingresamos el nombre de nuestro modelo, así como elegimos el idioma preferido de nuestro sitio, en nuestro caso ingresaremos es-es.



El codigo de nuestro modelo es el siguiente:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
class Alumno(models.Model):
ApellidoPaterno= models.CharField(max_length=35)
ApellidoMaterno = models.CharField(max_length=35)
Nombres = models.CharField(max_length=35)
DNI=models.CharField(max_length=8)
FechaNacimiento=models.DateField()
SEXOS= (('F','Femenino'),('M','Masculino'))
sexo=models.CharField(max_length=1,choices=SEXOS,default='M')
#foto=models.ImageField(upload_to='photos')
def NombreCompleto(self):
cadena="{0} {1} {2}"
return cadena.format(self.ApellidoPaterno,self.ApellidoMaterno,self.Nombres)
def __str__(self):
return self.NombreCompleto()
class Curso(models.Model):
Nombre = models.CharField(max_length=30)
Estado = models.BooleanField(default=True)
Creditos = models.PositiveIntegerField(default=1)
def __str__(self):
return "{0} -> {1}".format(self.Nombre,self.Creditos)
class Matricula(models.Model):
Alumno =models.ForeignKey(Alumno, null=False, blank= False, on_delete= models.CASCADE)
Curso = models.ForeignKey(Curso, null=False, blank=False, on_delete=models.CASCADE)
FechaMatricula=models.DateTimeField(auto_now=True)
def __str__(self):
cadena = "{0} inscrito en: {1}"
return cadena.format(self.Alumno, self.Curso)
view raw models.py hosted with ❤ by GitHub


Realizamos la migración para que actualice el modelo recién ingresado y creamos nuestro super usuario.
 
Ingresamos nuestros datos en Django, para ingresar a Django seguimos la dirección que nos da cuando corremos el servidor, usualmente es 127.0.0.1:8000  y si queremos ingresar como admin sería 127.0.0.1:8000/admin.