Fundamentos de Django

1

¿Qué es Django?

2

¿Cómo instalar Django?

3

Entendiendo la arquitectura de Django

4

Qué es el patrón MVT (Model, View y Template)

La M en el Patrón: Modelo

5

Introducción a Modelos y Bases de Datos

Manejo Avanzado de Modelos y Bases de Datos

6

Gestión de Modelos y Bases de Datos en Django con SQLite

7

Inserción de Datos con Django

8

Actualización y Eliminación de Datos en Django

Relaciones y Asociaciones entre Modelos

9

Creación y Gestión de Relaciones entre Modelos en Django

10

Relaciones Muchos a Muchos (N:N) en Django

11

Relaciones Uno a Uno (1:1) en Django

12

Queries y Filtros en Django: Optimización y Estrategias Avanzadas

Configuración de URLs y Vistas Avanzadas

13

Gestión de URLs en Django: Configuración, Rutas y Mejores Prácticas

14

Vistas Basadas en Clases en Django

La T en el Patrón: Plantillas o Templates

15

Personalización de Interfaz con Plantillas en Django

Desarrollo de Aplicaciones en Django

16

Configuración del Proyectos en Django

17

Creación del Modelo para la Aplicación 'Products' en Django

18

Cómo Crear Migraciones de Datos en Django

19

Creación de la Aplicación 'Products' con Formularios en Django

20

Integracion de TailwindCSS en Django

21

Django Admin

22

Manejo de Sesiones en Django

23

Manejo de Órdenes en CoffeShop

24

Manejo de Pedidos en CoffeShop

25

Mixings en vistas basadas en clases

26

Agregar productos a la orden

Django Rest Framework

27

Django REST Framework

Despliegue de aplicaciones Django

28

Configurar PostgreSQL en AWS con Django

29

Variables de entorno en Django

30

¿Cómo usar Unit Testing en Django?

31

Debugging en Django

32

Desplegar aplicaciones de Django en AWS

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

12 Días
8 Hrs
2 Min
51 Seg
Curso de Django

Curso de Django

Luis Martínez

Luis Martínez

Manejo de Pedidos en CoffeShop

24/32
Recursos

Aportes 3

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Realicé este complemento con funciones o methodos dentro de los modelo para calcular total, igv, subtotal: Pero no son campos dentro de los modelo, solo se calculan por los campos quantity y precio. Mi pregunta esta es una buena practica? o debo crear los campos en los modelos para estos casos que son necesarios los totales, subtotales, igv (IVA) ? Y como lo realizaría? ![](https://static.platzi.com/media/user_upload/image-e50fa388-acca-4f62-a6ad-13fdb9f14bb5.jpg)
Esto estaba en la documentación: #### The `LoginRequiredMixin` mixin[¶](https://docs.djangoproject.com/en/5.1/topics/auth/default/#the-loginrequiredmixin-mixin "Permalink to this headline") When using [class-based views](https://docs.djangoproject.com/en/5.1/topics/class-based-views/), you can achieve the same behavior as with `login_required` by using the `LoginRequiredMixin`. This mixin should be at the leftmost position in the inheritance list. *class* `LoginRequiredMixin`[\[source\]](https://github.com/django/django/blob/stable/5.1.x/django/contrib/auth/mixins.py#L67)[¶](https://docs.djangoproject.com/en/5.1/topics/auth/default/#django.contrib.auth.mixins.LoginRequiredMixin "Permalink to this definition") If a view is using this mixin, all requests by non-authenticated users will be redirected to the login page or shown an HTTP 403 Forbidden error, depending on the [`raise_exception`](https://docs.djangoproject.com/en/5.1/topics/auth/default/#django.contrib.auth.mixins.AccessMixin.raise_exception "django.contrib.auth.mixins.AccessMixin.raise_exception") parameter. You can set any of the parameters of [`AccessMixin`](https://docs.djangoproject.com/en/5.1/topics/auth/default/#django.contrib.auth.mixins.AccessMixin "django.contrib.auth.mixins.AccessMixin") to customize the handling of unauthorized users: from django.contrib.auth.mixins import LoginRequiredMixin class MyView(LoginRequiredMixin, View): login\_url = "/login/" redirect\_field\_name = "redirect\_to" url: <https://docs.djangoproject.com/en/5.1/topics/auth/default/> Pero si vas al source code te muestra como usarlo: class LoginRequiredMixin(AccessMixin): """Verify that the current user is authenticated.""" def dispatch(self, request, \*args, \*\*kwargs): if not request.user.is\_authenticated: return self.handle\_no\_permission() return super().dispatch(request, \*args, \*\*kwargs) Lo unico que le agregue al codigo del profe fue: ```python from django.shortcuts import render from django.views.generic import DetailView from .models import Order from django.contrib.auth.mixins import LoginRequiredMixin #la importación del mixin class OrderDetailView(LoginRequiredMixin, DetailView): #se le pasa a la clase model = Order template_name = "orders/order_detail.html" context_object_name = 'order' def get_object(self, queryset=None): return Order.objects.filter(user=self.request.user, is_active=True).first() #y en el filtro se pone otra condición para que el is:active pertenezca al usuario logeado ```from django.shortcuts import renderfrom django.views.generic import DetailViewfrom .models import Orderfrom django.contrib.auth.mixins import LoginRequiredMixin class OrderDetailView(LoginRequiredMixin, DetailView): model = Order template\_name = "orders/order\_detail.html" context\_object\_name = 'order' def get\_object(self, queryset=None): return Order.objects.filter(user=self.request.user, is\_active=True).first()
![](https://static.platzi.com/media/user_upload/image-b07d171b-ffa7-42b9-a207-acc2f3c2532d.jpg)