def save(self, force_insert=False, force_update=False): if self.link: key = base62.to_decimal(self.link) try: ShortURL.objects.get(pk=key) except ShortURL.DoesNotExist: raise ValueError(_('Invalid value of link')) models.Model.save(self, force_insert, force_update)
def get(self, request, *args, **kwargs): """ View which gets the link for the given base62_id value and redirects to it. """ base62_id = kwargs['base62_id'] key = base62.to_decimal(base62_id) link = get_object_or_404(ShortURL, pk = key) link.usage_count += 1 link.save() return HttpResponsePermanentRedirect(link.url)