Я создаю веб-сайт с фотогалереей, где пользователи могут добавлять комментарии. Когда я go перехожу на страницу фотогалереи, я получаю следующее сообщение об ошибке:
NoReverseMatch в / photo_feed / Обратный для 'add_comment' с аргументами '(' ',)' не найден. Попробован 1 шаблон (ов): ['add_comment / $']
Код соответствующей части HTML документа выглядит следующим образом:
<h2>comments</h2>
{% if not comments %}
No comments
{% endif %}
{% for x in comment %}
<div class="comments" style="padding: 10px;">
<p class="font-weight-bold">
<h4>Comment by</h4> {{ x.user }}
<span class=" text-muted font-weight-normal">
{{ x.created_on }}
</span>
</p>
{{ x.body | linebreaks }}
</div>
{% endfor %}
</div>
<div class="card-body">
{% if new_comment %}
<h2>Your comment has been posted.</h2>
{% else %}
<h3>Leave a comment</h3>
<form action="{% url 'nowandthen:add_comment' image.id %}" method="POST">
{{ comment_form.as_p }}
{% csrf_token %}
<button type="submit" class="btn btn-primary btn-lg">Submit</button>
{% endif %}
URL-адреса .py запись для add_comment path('add_comment/<int: image_id>', views.add_comment, name='add_comment')
. Удаление int: image_id не решает проблему.
Это мои views.py:
@login_required
def add_comment(request, image_id):
new_comment = None
template_name = 'add_comment.html'
image = get_object_or_404(Picture, id=image_id)
comment = image.comments.filter(active=True)
new_comment = None
# Comment posted
if request.method == 'POST':
comment_form = CommentForm(data=request.POST)
if comment_form.is_valid():
# Create Comment object and don't save to database yet
new_comment = comment_form.save(commit=False)
# Assign the current post to the comment
new_comment.post = post
# Save the comment to the database
new_comment.save()
else:
comment_form = CommentForm()
context = {'image': image,'comment': comment, 'new_comment': new_comment,'comment_form': comment_form}
return render(request, template_name, context)
Когда я go в админке, идентификаторы для фотографий не генерируются. Может быть, проблема в том, что отсутствуют идентификаторы? Если да, то как мне это исправить?
URL хранилища: https://github.com/EmilyQuimby/my_now_and_then.
Спасибо.