Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/11/2012, 01:49
forosanto
 
Fecha de Ingreso: julio-2011
Mensajes: 62
Antigüedad: 12 años, 9 meses
Puntos: 5
Como pasar PermanentRedirect a una Class-based-view

En realidad estoy empezando con Django y Python, estuve mirando como realizar una redirección permanente cuando requiero cambiar la url de algún articulo y que en vez de darme un error 404 me redirecione al nuevo articulo, el slug queda guardado en la db y con la id se puede verificar que son el mismo objeto.

Esto seria un ejemplo de una vista genérica, la he sacado de django.es
Código Python:
Ver original
  1. from django.http import HttpResponsePermanentRedirect
  2. from django.shortcuts import get_object_or_404
  3.  
  4. def mi_vista(request, slug, id):
  5.     try:
  6.         negocio = Negocio.objects.get(slug=slug, id=id)
  7.     except ObjectDoesNotExist:
  8.         negocio = get_object_or_404(Negocio, id=id)
  9.         return HttpResponsePermanentRedirect(negocio.get_absolute_url())
  10.     # ...

De verdad agradezco si me pueden dar una mano, gracias.