2012-02-08 11 views
0

私はPythonとDjangoの新機能です。私は第2のビュー機能にリダイレクトしようとしています。ここに私のURLの構成は次のとおりです。NoReverseMatch with Django

urlpatterns = patterns('dept.pv.verif.views', 
    (r'^apps/dept/pv/verif/$', 'index', {}, 'index'), 
    (r'^apps/dept/pv/verif/display$', 'display', {}, 'display'), 
    (r'^apps/dept/pv/verif/display/(?P<action>\w{1})/(?P<id>\w{8})/$', 'display', {}, 'display'), 
    url(r'^apps/dept/pv/verif/display/(?P<action>\w{1})/(?P<id>\w{8})/$', 'display', name='display'),) 

そしてここでは、私の見解関数です:

def index(request): 
    context = {} 
    visit_switch = request.GET.get('visit_switch') 
    if not visit_switch: 
     id_form = Enter_ID() 
    else: 
     id_form = Enter_ID(request.GET) 
     if id_form.is_valid(): 
      return redirect('display', action='R', id='test') 
    context['id_form'] = id_form 
    return render_to_response('index.html', {'context':context}) 

と第二:

def display(request, action, id): 
# ... 
    return render_to_response('index.html') 

私はNoReverseMatchなエラーになっています。私はリダイレクトラインが私のURLの1つと一致しない理由を理解していません。私はあなたが提供することができる任意のヘルプに感謝します。

答えて

1

この正規表現グループ:

(?P<id>\w{8}) 

はわずか8つの文字何かにマッチします。実際にid='test'を渡している場合は、それが問題になります。