Не работает урл паттерн в Джанго
Задача передать из урл в функцию юзернейм пользователя. Что делаю:
<a class="btn btn-sm text-muted" href="{% url 'posts:post_edit' username=userobject.username post_id=postobject.id %}" role="button">
Юзернейм уходит в урл:
path('<str:username>/<int:post_id>/edit/', views.post_edit, name='post_edit'),
Но не появляется во вью:
@login_required
def post_edit(request, post_id, username):
"""Редактирует пост"""
if request.user.username != username:
return redirect('post', username=username, post_id=post_id)
postobject = Post.objects.get(id=post_id)
if request.method == 'POST':
form = PostForm(request.POST)
if form.is_valid():
post = Post()
text = form.cleaned_data['text']
if form.cleaned_data['group']:
group = form.cleaned_data['group']
objectgroup = Group.objects.filter(id=group)
post.group = objectgroup[0]
username = request.user
post.id = post_id
post.text = text
objectuser = User.objects.filter(username=username)
post.author = objectuser[0]
post.pub_date = datetime.now()
post.save()
return HttpResponseRedirect(
f'/profile/{username}',
RequestContext(request)
)
else:
form = PostForm(initial={'text': postobject.text})
return render(request, 'posts/post_edit.html', {
'form': form,
'post_id': post_id,
'is_edit': True
})