2016-09-13 4 views
0

Views.py는 인수 'profile_user' '()'및 키워드 인수 '{}'

를 찾을 수없는 역 NoReverseMatch 주어진 다음과 같이 프로필 URL이 어떤 이름 공간이없는
@login_required 

def profile_edit(request): 

    profile, created = UserProfile.objects.get_or_create(user=request.user) 
    form = UserProfileForm(request.POST or None, request.FILES or None, instance=profile) 
    if form.is_valid(): 
     instance = form.save(commit=False) 
     instance.user = request.user 
     instance.save() 
     return redirect('profile_user') 

    context = { 
     "title": 'Edit Profile', 
     "form":form, 
    } 
    return render(request, 'profiles/userprofile_form.html', context) 

주요 URL입니다.

url(r'^profile/(?P<username>[\[email protected]+-]+)$', profile_view, name='profile_user'), 

누구든지이 문제를 해결할 수 있습니까?

답변

0

URL에 이름이 지정된 인수 username이 필요합니다. 키워드 인수로 redirect()으로 지정해야합니다. 예 : 나에게 같은 오류를 제공

redirect('view-name', username='joe') 
+0

에 대한 정말 감사합니다 ('profile_user ', 사용자 이름 = request.user.username)로 변경하고 작동 profile_user ', username = request.user.username) 그리고 작동합니다, 답장을 보내 주셔서 대단히 감사합니다. – Biju

0

url에는 사용자 이름에 1 개의 매개 변수가 필요합니다. 그러나 reverse()에서는 매개 변수를 전달하지 않습니다. 따라서 오류. 역 전화 번호 변경

return redirect('profile_user', args=(instance.user.username,)) 
+0

, 그래서 나는 '(I가 그것을 변경 회신 – Biju