Django/Python не переходит по ссылкам на html страницы. Как это исправить?

Хотел создать простую доску для объявлений (только начал изучать Django). Одним из заданий было создать несколько html страничек и одну базовую, где содержатся ссылки на них (причём в подсказке к решению было сказано, что для этого нужно отредактировать html документ) Структура проекта

Страница со списком отлично загружается (advertisement_list.html), ожидалось, как и в примере, что при нажатии на ссылку в advertisement_list.html, будет произведён переход к страничке advertisement1.html, но этого не просисходит((( Причём пробовал по всякому: указывать в href и "/advertisement1.html" и полный путь, но ничего не помогает. Ниже приведён фрагмент html код advertisement_list.html

<html>
<h2><a href="advertisement1.html"> Advertisement 1 </a></h2>
</html>

При нажатии на ссылку выскакивает 404 код введите сюда описание изображения

Можете, пожалуйста, подсказать, как это исправить (2 день сижу и перепробовал все варианты. Работает, только если создать внутри board ещё приложение через startapp и сделать его таким же, как и advertisements)

На всякий случай код urls.py и views.py из advertisements

advertisements/urls.py

from django.urls import path
from .import views

urlpatterns = [
    path('', views.advertisement_list, name='advertisement_list'),
]

advertisements/views.py

from django.shortcuts import render

# Create your views here.
def advertisement_list(request, *args, **kwargs):
    return render(request, 'advertisements/advertisement_list.html', {})

board/urls.py

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path("admin/", admin.site.urls),
    path('advertisements/', include('advertisements.urls')),

]

Ответы (1 шт):

Автор решения: Константин Комиссаров

Вам нужно написать контроллер (в терминологии джанго это View), который по аналогии со список будет рендерить шаблон конктерного объявления. Передать в этот View id или другой признак объявления, по которому вы выберет его из базы данных.

Затем пробросить в контексте в шаблон ваше объявление и в темплейте подставить в нужные места данные вашего конкретного объявления.

В списке urls создать пусть для рендера объявлений, в котором будет использоваться идентификатор (или использовать гет-параметр для этого).

А в генерации ссылок на странице со списком использовать тэг url.

Это если в общих чертах. Вопрос слишком обширный и в ответе придется написать чуть ли не весь код приложения, чтобы это было с примерами.

→ Ссылка