#python-3.x #django #django-rest-framework
Вопрос:
Эй, мне было интересно, можно ли полностью отключить drf
собственный URL-адрес для рендеринга.
Я знаю, что вы можете переключиться с визуализатора api для просмотра на визуализатор JSON. Как у меня есть в моих собственных настройках, показанных ниже
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': [
'rest_framework.renderers.JSONRenderer',
]
}
Когда я захожу на свой локальный хост:8000/продукты, я хочу видеть просто страницу 404, а не продукты, отображаемые в формате JSON. В настоящее время я использую простой маршрутизатор.
Редактировать :
Вот как это выглядит, когда я перехожу по URL-адресу в браузере. Это URL-адрес серверной части
Я не хочу, чтобы он что-либо отображал, если это возможно.
Ответ №1:
localhost:8000/товары, которые я хочу видеть просто на странице 404
В любой части, где вы хотите показать 404, вы можете выполнить следующий пример:
# views.py
from django.http import Http404
def products(request, ):
if request.is_ajax():
return Response(data)
raise Http404("Product does not exist")
Комментарии:
1. Я не думаю, что я был очень ясен в своем посте, я обновлю его некоторыми фотографиями.
2. Вы хотите показать 404 страницы? Вы можете использовать
raise Http404
, но если вы сделаете это, то ваше приложение не будет работать. Если вы не хотите показывать что-либо, кроме полезного api в веб-приложении, вы можете проверитьif request.is_ajax
приведенный выше код.3. Да, я думаю, что второй, где запрос-это ajax, я собираюсь попробовать это