15 / 2 / 1
Регистрация: 18.09.2015
Сообщений: 227

Ошибка django: DoesNotExist at /catalog/ django

08.03.2020, 19:37. Показов 2808. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Пишу простейший сайт на django. Пока в нем есть верхняя панель навигации и боковое меню слева, содержание которого меняется в зависимости от выбранного пункта верхнего меню.
Проблема возникает при перенаправлении пользователя при запросе: url = "" (относительно домена) на url = "<str:slug>", где в качестве slug берётся slug конкретного пункта меню. Содержание файла urls.py:
Python
1
2
3
4
5
6
urlpatterns = [
    path('', show_site, name='menu'),
    path('<str:slug>/',show_menu_page),
    path('literature/<str:id>', show_book_page, name='book'),
    path('history/<str:id>', show_history_page, name='story')
]
Запрос по первому url я перенаправляю на второй url urlpatterns, откуда он перенаправляется к третьему/четвертому url, в зависимости от того, какой пункт меню расположен первым в верхнем нав.баре. Т.е. перехожу в первый пункт верхнего меню и для него перехожу по первой ссылке бокового меню.
Содержание файла views.py:
Python
1
2
3
4
5
6
7
def show_site(request):
    first_menu_slug = Menu.objects.get(id=1).slug
    return HttpResponseRedirect(first_menu_slug)
 
def show_menu_page(request, slug):
    menu = Menu.objects.get(slug__iexact=slug)
    return HttpResponseRedirect('1')
При запросе "localhost:5000/" браузер выдает ошибку:
DoesNotExist at /catalog/
Menu matching query does not exist.
Для пунктов меню у меня в базе данных прописаны следующие slugs:
Литература - literature
Форум - forum
История - history
Немного непонятно, причем здесь slug = "catalog", который django подставляет в качестве url перенаправления, ведь такого slug нет в принципе ни у одного моего объекта из models. Подскажите, пожалуйста, в чём может быть дело.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.03.2020, 19:37
Ответы с готовыми решениями:

Настроить авторизацию через социальные сети в django с помощью Django Social Auth
Пытаюсь настроить авторизацию через социальные сети в django с помощью Django Social Auth, но вылетаю с ошибкой WrongBackend, не работает...

Как поменялся синтаксис от применения django.conf.urls.url к django.urls.path?
Всем привет! Изучаю Django, действую гайдам. В гайде в urlpatterns пути прописывают через url. Но были старые версии. Как же сейчас...

Django ошибка
только начал разбираться в джанго при создание каталога выдает вот такую ошибку OperationalError at /admin/catalog/catalog/add/ no such...

3
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
09.03.2020, 01:51
Покажи весь трейсбек
0
15 / 2 / 1
Регистрация: 18.09.2015
Сообщений: 227
09.03.2020, 16:27  [ТС]
Вот весь traceback:
Traceback
/home/daniil/Рабочий стол/django/venv/lib/python3.6/site-packages/django/core/handlers/exception.py in inner
response = get_response(request) …
▶ Local vars
/home/daniil/Рабочий стол/django/venv/lib/python3.6/site-packages/django/core/handlers/base.py in _get_response
response = self.process_exception_by_middleware(e, request) …
▶ Local vars
/home/daniil/Рабочий стол/django/venv/lib/python3.6/site-packages/django/core/handlers/base.py in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs) …



#Здесь как раз видно, что в качестве значения slug объекта Menu с id = 1 передается 'catalog':
▶ Local vars
/home/daniil/Рабочий стол/django/myapp/chingis/forum/views.py in show_menu_page
menu = Menu.objects.get(slug__iexact=slug) …
▼ Local vars
Variable Value
request
<WSGIRequest: GET '/catalog/'>
slug
'catalog'
/home/daniil/Рабочий стол/django/venv/lib/python3.6/site-packages/django/db/models/manager.py in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs) …



▶ Local vars
/home/daniil/Рабочий стол/django/venv/lib/python3.6/site-packages/django/db/models/query.py in get
self.model._meta.object_name …
▶ Local vars
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
10.03.2020, 12:26
Значит, нет меню с таким слагом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.03.2020, 12:26
Помогаю со студенческими работами здесь

Django-admin : Имя "django-admin" не распознано как имя командлета, функции, файла сценария или выполняемой программы
Точнее я уже установила Django, но вот что он мне выводит, после того как пишу &quot;django-admin startproject&quot; FirstDjango в Terminal...

Ошибка django-admin
Всем привет. Ребят помогите пожалуйста, хочу создать проект командой django-admin startproject www, в ответ получаю CommandError: ...

Django Ошибка доступа (403) Ошибка проверки CSRF. Запрос отклонён
На хостинге разместил сайт и не могу войти в админку, т.к. возникает 403 ошибка &quot;Ошибка доступа (403). Ошибка проверки CSRF. Запрос...

Django, ошибка The included URLconf
Всем доброго времени суток. В Django проекте есть приложение, у него такой класс class IndexPageConfig(AppConfig): name =...

В официальном тутореале django ошибка?
Здраво Всем!!! Почитал сейчас тутор для начинающих по django и не увидал в документации конкретного шага : подключения имени startapp в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru