Now urlmappings in dburls uses django.core.urlresolvers.resolve, not redirects.

portnov [2008-06-19 06:12:22]
Now urlmappings in dburls uses django.core.urlresolvers.resolve, not redirects.
Filename
dburls/views.py
diff --git a/dburls/views.py b/dburls/views.py
index d644cb4..9215fb8 100644
--- a/dburls/views.py
+++ b/dburls/views.py
@@ -1,4 +1,5 @@
 import re
+from django.core.urlresolvers import resolve
 from django.http import HttpRequest,HttpResponse,HttpResponseRedirect,Http404
 from models import URLMap
 from hms import hms
@@ -11,10 +12,9 @@ def generic(request):
     cre = re.compile(map.source,re.L|re.U)
     if cre.match(path):
       url = cre.sub(map.destination,path)
-#       print "%s matches %s: redirecting." % (path,map.source)
-      return HttpResponseRedirect(url)
-#     else:
-#       print "%s don't match %s." % (path,map.source)
+      callback,args,kwargs = resolve(url)
+      print callback,args,kwargs
+      return callback(request,*args,**kwargs)
   return strange(request)

 @hms.hook
@@ -24,6 +24,7 @@ def map_url(request):
   elif isinstance(request,HttpRequest):
     raise Http404

+# View itself
 def strange(request):
   ret = hms.call_hooks('map_url',request)
   if isinstance(ret,HttpResponse):
ViewGit