Я пытался удалить функцию комментариев, когда пользователь нажимает кнопку, после чего удаляет соответствующий элемент и перенаправляет на главную страницу. Однако я получил это сообщение об ошибке, и я трачу время, чтобы исправить это. Просмотрите мой код и если что-то не так.Django: Не удалось перенаправить главную страницу после удаления объекта
сообщение об ошибке
UnboundLocalError at /blog/detail/18/
local variable 'context' referenced before assignment
views.py
@login_required
def delete_comment(request, comment_no):
comment = Comment.objects.get(pk=comment_no).delete()
return redirect('blog/home.html')
urls.py
url(r'^delete_comment/(?P<comment_no>[0-9]+)/$', views.delete_comment, name='delete_comment'),
шаблоны
<form action="{% url 'blog:delete_comment' %}" method="post">
{% csrf_token %}
<input type="hidden" name="comment_no" value="{{ comments.comment_no }}" />
<button type="submit">delete</button>
</form>
EDIT 01
Я добавил четкости деталей в views.py
@login_required
def detail(request, article_no):
if not request.user.is_authenticated():
return redirect_to_login(next, 'blog/login.html')
else:
user = request.user
if 'username' in request.session:
username = request.session['username']
item = get_object_or_404(Article, pk=article_no)
item.hit = Article.objects.filter(pk=article_no).update(hit = item.hit+1)
no = article_no
comments = Comment.objects.filter(article_no=article_no)
context = {
'item': item,
'comments': comments,
}
return render(request, 'blog/detail.html', context)
Можете ли вы предоставить общий доступ к методу просмотра? Ошибка указывает, что там что-то не так – Fallen
@Fallen Я добавил метод detail в views.py. – camila
Это точный отступ, который вы использовали в вашей 'def detail'? Второй блок 'if' слегка смещен. – ooknosi