Django NoReverseMatch - не могу понять, почему это поднимает - PullRequest
0 голосов
/ 13 марта 2019

Почему Django возвращает NoReverseMatch?Я пытаюсь, чтобы мое приложение перенаправляло пользователя, когда оно обнаруживает, что пользователь, пытающийся редактировать сообщение, не является автором сообщения.Однако Django возвращает NoReverseMatch, когда я пытаюсь это сделать.

URL-адреса:

path('new/', views.NewPost, name='NewPost'),
path('post/<int:pk>/edit/', views.editPost, name='editPost'),
path('post/<int:pk>/delete/', views.deletePost, name='deletePost'),
path('post/<int:pk>/comment/', views.commentPost, name='commentPost'),
path('post/<int:pk>/<str:slug>/', views.viewPost, name='viewPost'),

Просмотр:

def editPost(request, pk):
    if request.method == 'GET':
        post = get_object_or_404(Post, pk = pk)
        if post.author == request.user:
            form = PostForm(instance = post)
            return render(request, 'editPost.html',  {'form': form, 'post': post})
        else:
            return redirect('viewPost',pk = pk, postURL : post.postURL)

1 Ответ

0 голосов
/ 13 марта 2019

Ваш url.py внутри вашего приложения? Затем вам нужно будет добавить имя приложения к имени представления. Так, например, ваше приложение называется blog, тогда ваше имя представления будет blog:viewPost

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...