from django.http import HttpResponse, HttpResponseRedirect, Http404
from django.utils import timezone
from qrurls.models import URL, URLItem
def shorturl (request, shorturl) :
shorturl = shorturl.strip(' /')
try :
url = URL.objects.get(shorturl=shorturl)
except URL.DoesNotExist :
raise Http404()
try :
# most recent
now = timezone.now()
url_item = URLItem.objects.filter(shorturl=url, published__lt=now).order_by('-published')[0]
except IndexError :
raise Http404()
return HttpResponseRedirect(url_item.get_absolute_url())