Здравствуйте, не работает url ссылка на станицу обновление поста,причем сама страница прекрасно работает.
Reverse for 'edit' with keyword arguments '{'pk': ''} - ошибка такая
views.py
@login_required
def post_edit(request, pk):
post = Post.objects.get(id=pk)
form = PostEditForm(instance=post)
if request.method == 'POST':
form = PostEditForm(data=request.POST, files=request.FILES, instance=post)
if form.is_valid():
post = form.save(commit=False)
post.user = request.user
post.save()
messages.success(request, 'Post updated successfully')
return render(request, 'posts/post/edit.html', )
else:
messages.error(request, 'Error updating your post')
else:
form = PostEditForm(instance=post)
return render(request, 'posts/post/edit.html', {'form': form, 'instance': post})
urls.py
urlpatterns = [
path('create/', views.post_create, name='create'),
path('edit/<int:pk>/', views.post_edit, name='edit'),
]
html
{% extends "base.html" %}
{% block title %}Good job{% endblock %}
{% block content %}
<h1> Hi, {{ user.username }}!</h1>
<p>Your post has been successfully add to platform. </p>
You can <a href="{% url "posts:edit" pk=post.id %}">edit your post</a>
{% endblock %}
Примечание: если написать pk=2, то все прекрасно работает. Кто знает,в чем может быть проблема?