Django:如何在任何类中使用reverse()
我在项目的路径 project/myapp/myclass.py 下有一个叫 myclass.py 的类文件,我想在里面使用 reverse() 这个函数,但我找不到怎么导入 urlConf!如果不获取 urls,我就会遇到 NoReverseMatch 这个错误。
其实,django-jqgrid 在他们的示例中也使用了这种方法:https://github.com/gerry/django-jqgrid
1 个回答
3
你可以随时导入 django.core.urlresolvers.reverse
,然后传入需要的 args
和 kwargs
来进行反向解析。
反向解析的定义是:
reverse(viewname[, urlconf=None, args=None, kwargs=None, current_app=None])
在你的视图中,你总是可以这样做:
from django.core.urlresolvers import reverse
def myview(request):
return HttpResponseRedirect(reverse('arch-summary', args=[1945]))
想了解更多,可以参考 官方文档。