NoReverseMatch при добавлении раздела комментариев в DjangoPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 NoReverseMatch при добавлении раздела комментариев в Django

Сообщение Anonymous »


Я пытаюсь добавить комментарии в свой блог, но у меня возникает ошибка, и я не могу понять, почему.

Ошибка:

NoReverseMatch в /2024/01/01/lesson-1/ Обратное для «post_comment» с аргументами «('',)» не найдено. Опробовано 1 шаблон(ы): ['(?P[0-9]+)/(?P[0-9]+)/(?P[0-9]+) /(?P[-a-zA-Z0-9_]+)/комментарий/\\Z'] с подсветкой:

url.py

urlpatterns = [ ... path('////',views.lesson_detail, name='lesson_detail'), path('////comment/',views.post_comment, name='post_comment'), ...] forms.py

класс CommentForm(forms.ModelForm): класс Мета: модель = Комментарий поля = ['имя', 'электронная почта', 'тело'] models.py

Урок класса(models.Model): Статус класса (models.TextChoices): ЧЕРНОВИК = 'DF', 'Черновик' ПУБЛИКИРОВАНО = 'ПБ', 'Опубликовано' title = models.CharField(max_length=250) slug = models.SlugField(max_length=250, unique_for_date='publish') автор = models.ForeignKey(Пользователь, on_delete=models.CASCADE, linked_name='blog_posts') тело = модели.TextField() теги = Менеджер тегов() публикация = models.DateTimeField(default=timezone.now) создано = models.DateTimeField(auto_now_add=True) обновлено = models.DateTimeField(auto_now=True) статус = models.CharField(max_length=2, choice=Status.choices, default=Status.DRAFT) объекты = модели.Менеджер() опубликовано = ОпубликованныйМенеджер() класс Мета: заказ = ['-публиковать'] индексы = [ модели.Index(fields=['-publish']), ] защита __str__(сам): вернуть себе.заголовок защита get_absolute_url(self): returnverse('lang_learning_app:lesson_detail', args=[self.publish.year, self.publish.month, self.publish.day, self.slug]) Комментарий класса (модели.Модель): сообщение = модели.ForeignKey(Урок, on_delete=models.CASCADE, связанное_имя='комментарии') имя = модели.CharField(max_length=80) электронная почта = модели.EmailField() тело = модели.TextField() создано = models.DateTimeField(auto_now_add=True) обновлено = models.DateTimeField(auto_now=True) активный = models.BooleanField(по умолчанию=True) класс Мета: заказ = ['создано'] индексы = [ модели.Индекс(поля=['создано']), ] защита __str__(сам): return f'Комментарий пользователя {self.name} на {self.post}' views.py

@require_POST Защиту post_comment (запрос, post_id): post = get_object_or_404(Lesson, id=post_id, status=Lesson.Status.PUBLISHED) комментарий = Нет # Комментарий был опубликован форма = CommentForm(данные=request.POST) если form.is_valid(): # Создаем объект Comment, не сохраняя его в базе данных комментарий = form.save(commit=False) # Назначаем публикацию комментарию комментарий.пост = сообщение # Сохраняем комментарий в базу данных комментарий.сохранить() return render(request, 'lessons/comment.html', {'post': post, 'form': form, 'comment': comment}) comment_form.html

Добавить новый комментарий {{ form.as_p }} {% csrf_token %}

lesson_detail.html

{% с comment.count как total_comments %} {{ total_comments }} комментарий{{ total_comments|pluralize }} {% endwith %} {% за комментарий в комментариях %} Комментарий {{ forloop.counter }} от {{ comment.name }} {{ комментарий.создан }}
{{ comment.body|разрывы строк }} {% пустой %}
Комментариев пока нет.
{% конец для %} {% включает "lessons/comment_form.html" %}
Не знаю, почему я получаю эту ошибку, я следовал инструкциям из книги Django на примере. Я внес некоторые коррективы в свой блог, вместо поста использовал урок. Знаете ли вы, почему я получаю эту ошибку?

Заранее спасибо!
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Создание комментариев и добавление в поле для комментариев
    Anonymous » » в форуме Html
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Я получаю ошибку noreversematch при посещении другого URL - Django [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Ошибка Django NoReverseMatch: как создать URL-адреса для каждой модели
    Anonymous » » в форуме Python
    0 Ответы
    34 Просмотры
    Последнее сообщение Anonymous
  • Ошибка Django NoReverseMatch: как создать URL-адреса для каждой модели
    Anonymous » » в форуме Python
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Как я могу устранить ошибку NoReverseMatch в Django? [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»