2013-03-12 5 views
0

명명 된 래핑 된 메서드에 대해 URL 역순으로 해석하려고합니다. 나는 내 urls.py에서 설정 한 다음 한 은 (this answer에 따라 :.매개 변수가있는 명명 된 래핑 된 메서드의 역방향 URL

urlpatterns = patterns('', 
('param_select/$',session_check(param_select),{}, 'param_select'), 
('registration/$',registration), 
('result_show/(\d+)',session_check(result_show),{}, 'result_show'), 
('^expofit/$',media_clean(start),{}, 'start'), 
('result_pick/$',session_check(result_pick),{}, 'result_pick'), 
('mail_report/$',session_check(mail_report)), 
('notification/$',session_check(notification)), 

그것은 매개 변수없이 모든 방법을 근무 그러나이 매개 변수를 하나에 실패

In [50]: from django.core.urlresolvers import reverse 

In [51]: reverse('result_pick') 
Out[51]: '/result_pick/' 

In [52]: reverse('start') 
Out[52]: '/expofit/' 

In [53]: reverse('result_show', args=(2,)) 
--------------------------------------------------------------------------- 
NoReverseMatch       Traceback (most recent call last) 
/home/alan/Desktop/expofit/expofit_env/local/lib/python2.7/site-packages/django/core/management/commands/shell.pyc in <module>() 
----> 1 reverse('result_show', args=(2,)) 

/home/alan/Desktop/expofit/expofit_env/local/lib/python2.7/site-packages/django/core/urlresolvers.pyc in reverse(viewname, urlconf, args, kwargs, prefix, current_app) 
    474    resolver = get_ns_resolver(ns_pattern, resolver) 
    475 
--> 476  return iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs)) 
    477 
    478 reverse_lazy = lazy(reverse, str) 

/home/alan/Desktop/expofit/expofit_env/local/lib/python2.7/site-packages/django/core/urlresolvers.pyc in _reverse_with_prefix(self, lookup_view, _prefix, *args, **kwargs) 
    394    lookup_view_s = lookup_view 
    395   raise NoReverseMatch("Reverse for '%s' with arguments '%s' and keyword " 
--> 396     "arguments '%s' not found." % (lookup_view_s, args, kwargs)) 
    397 
    398 class LocaleRegexURLResolver(RegexURLResolver): 

NoReverseMatch: Reverse for 'result_show' with arguments '(2,)' and keyword arguments '{}' not found. 

I를. 이 책에 따르면이 책에 따르면, 모든 URL이 똑같아 보인다. 결함이있는 곳에 대한 아이디어

+0

제가 읽은 문서가 장고 1.5에 맞는지 확인했습니다. 1.5로 업그레이드 한 후 업데이트됩니다. – TheMeaningfulEngineer

답변

0

문제는 내가 장고 1.4 버전을 사용하고 있었고 Django 1.5 워드 프로세서 이후 모든것을 업데이트하면 정상적으로 작동합니다.

In [5]: reverse('result_show',args=(3,)) 
Out[5]: '/result_show/3' 
관련 문제