Empecemos por crear el proyecto Universidad y aplicación GestionAcademica, utiliza el comando:
Para crear proyecto:
django-admin startproject nombre_proyecto
Para crear aplicación:
django-admin startapp nombre_app
Damos de alta la app GestionAcademica en la sección Universidad/settings/INSTALLED_APPS, así indicamos que nuestra app trabaje con el proyecto, agrega lo siguiente:
Modelo
Ahora creamos el modelo que contiene tres tablas Alumno, Curso y Matricula
Código:
# -*- 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') 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= 50) Creditos = models.PositiveSmallIntegerField(default= 1) Estado = models.BooleanField(default= True) 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_add = True) def __str__(self): cadena="{0} inscrito en: {1}" return cadena.format(self.Alumno,self.Curso.Nombre)
Dimos formato de presentación con el metodo __str__
Con esto se presentara con "nombre del curso" seguido de total de "créditos".
Ahora en Universidad/admin.py se agrega los modelos.
Código:
# -*- coding: utf-8 -*- from __future__ import unicode_literals from django.contrib import admin # Register your models here. from.models import Alumno from.models import Curso from.models import Matricula admin.site.register(Alumno) admin.site.register(Curso) admin.site.register(Matricula)
Una vez terminado, vamos a crear los modelos y migrar.
python manage.py makemigrations
python manage.py migrate
Ahora si corremos el servidor con el comando python manage.py runserver.
Haz creado con éxito en tu navegador ingresa a la siguiente dirección http://127.0.0.1:8000/.
Para administrar, modificar y agregar los datos en nuestra base de datos, vamos a crear un superusuario.
python manage.py createsuperuser
De nuevo corre el servidor y ve a http://127.0.0.1:8000/admin, con tu usuario y contraseña que registraste.
Visualizamos nuestra aplicación con nuestros 3 modelos.
Tablas
Nos quedara de esta manera:
Alumno
Con el método __str__Curso
Matricula
No hay comentarios:
Publicar un comentario