Algunas funciones son difíciles y aburridas de codificar cada vez. Pero los usuarios de Django no tienen que preocuparse por eso porque Django tiene algunas funciones integradas increíbles para hacer que nuestro trabajo sea fácil y agradable. Analicemos get_object_or_404() aquí.
¿Cómo usar get_object_or_404() en un proyecto Django?
Esta función llama al modelo dado y obtiene el objeto de eso, si ese objeto o modelo no existe, genera un error 404.
Ejemplo:
Supongamos que queremos obtener el tercer producto del modelo del producto, entonces podemos usar:
Python3
# import get_object_or_404() from django.shortcuts import get_object_or_404 # defining view def product_view(request): # retrieving product (pk is primary key) product = get_object_or_404(Products, pk=3)
Esta es la ventaja de Django si codificas eso, entonces tienes que escribir esta línea de código:
Python3
# import Http404 from django.http import Http404 # defining view def product_view(request): # try except logic try: product = Products.objects.get(pk=1) except Products.DoesNotExist: raise Http404("Given query not found....")
Usando get_object_or_404() con QuerySet:
La instancia de QuerySet se usa para filtrar datos mientras se obtienen de la base de datos. Por ejemplo, queremos buscar solo zapatos, entonces podemos escribir:
queryset = Products.objects.filter(type='shoes') get_object_or_404(queryset)
Podemos simplificar el ejemplo anterior con una sola línea:
get_object_or_404(Products, type='shoes')
Publicación traducida automáticamente
Artículo escrito por romilvishol y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA