Django: подходящий запрос не существует. Ошибка: 500

Пытаюсь найти ошибку - уже второй день

Задачей было создать кнопку для сохранения в сессии части информации о конкретной странице, которую можно было бы "прочитать позже". Я пытаюсь выяснить, почему я не могу найти совпадение в моем запросе.

id, который должен генерироваться в POST, равен 8, но, насколько я понял из логов, он равен 0.

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

Дополнительно, интересно, хорошо это или плохо, что в моем views.py я определил называемую модель EssayCls в двух функциях, где я определяю ее с разными именами. В def get как selected_essay = EssayCls.objects.get(slug=slug), а в def post как post = EssayCls.objects.get(slug=slug).

Мой views.py:

Мой urls.py:

from django.urls import path
from django.views.generic.base import RedirectView
from django.contrib.staticfiles.storage import staticfiles_storage 
from . import views

urlpatterns = [
    path('favicon.ico', RedirectView.as_view(url=staticfiles_storage.url('author\logos\media'))),
    path('', views.home_view_pa, name='developer-home'), # my-domain.com/pa_pe_developer
    path('all-essays', views.all_essays, name='all-essays'), # my-domain.com/pawerl_pe_developer FOR ALL ESSAYS
    path('<slug:slug>/success', views.confirm_registration, name='confirm-registration'),
    path('<slug:slug>', views.MyEssaysView.as_view(), name='essay-path'),
    path('read-later', views.ReadLaterView.as_view(), name='read-later')
]

Мой models.py:

class EssayCls(models.Model):
    title = models.CharField(max_length=200)
    organizer_email = models.EmailField(null=True)
    date = models.DateField(null=True)
    slug  = models.SlugField(unique=True, db_index=True)
    description = models.TextField(validators = [MinLengthValidator(10)])
    details = models.TextField()
    image = models.ImageField(upload_to='images')

    video = models.ForeignKey(VideoObject, blank=True, null=True, on_delete=models.SET_NULL, related_name="video_obj")
    language = models.ForeignKey(ProgLang, null=True, on_delete=models.SET_NULL) 
    guest = models.ManyToManyField(SendMeMessage, blank=True) 
    tags = models.ManyToManyField(Tag)
    
    def __str__(self):
        return f"{self.title}" 

    class Meta:
        verbose_name = "My Essay" 

мой шаблон:

<div id="read-later">
    <form action="{% url 'read-later' %}" method="POST">
        {% csrf_token %}
        
        <input type="hidden" value="{{ essay_all.id }}" name="post_id">
        <button>
        {% if saved_for_later %}
            Remove from "Read Later" List
        {% else %}
            Read Later
        {% endif %}
        </button>
    </form>
</div>

Вывод оболочки сервера:

Traceback (most recent call last):
  File "C:\Users\b2b\venv\lib\site-packages\django\core\handlers\exception.py", line 55, in inner
    response = get_response(request)
  File "C:\Users\b2b\venv\lib\site-packages\django\core\handlers\base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\views\generic\base.py", line 103, in view
    return self.dispatch(request, *args, **kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\views\generic\base.py", line 142, in dispatch
    return handler(request, *args, **kwargs)
  File "C:\Users\b2b\django_my_page_author\author_developer\views.py", line 197, in post
    post = EssayCls.objects.get(slug=slug)
  File "C:\Users\b2b\venv\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\db\models\query.py", line 650, in get
    raise self.model.DoesNotExist(
author_developer.models.EssayCls.DoesNotExist: EssayCls matching query does not exist.
Internal Server Error: /read-later
Traceback (most recent call last):
  File "C:\Users\b2b\venv\lib\site-packages\django\core\handlers\exception.py", line 55, in inner
    response = get_response(request)
  File "C:\Users\b2b\venv\lib\site-packages\django\core\handlers\base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\views\generic\base.py", line 103, in view
    return self.dispatch(request, *args, **kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\views\generic\base.py", line 142, in dispatch
    return handler(request, *args, **kwargs)
  File "C:\Users\b2b\django_my_page_author\author_developer\views.py", line 197, in post
    post = EssayCls.objects.get(slug=slug)
  File "C:\Users\b2b\venv\lib\site-packages\django\db\models\manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "C:\Users\b2b\venv\lib\site-packages\django\db\models\query.py", line 650, in get
    raise self.model.DoesNotExist(
author_developer.models.EssayCls.DoesNotExist: EssayCls matching query does not exist.
[02/Feb/2023 15:09:34] "POST /read-later HTTP/1.1" 500 92898

Вывод браузеров: enter image description here

Вернуться на верх