Полностью отключите URL-адрес платформы django rest

#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-адрес серверной части

https://ibb.co/717R8SM

Я не хочу, чтобы он что-либо отображал, если это возможно.

Ответ №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, я собираюсь попробовать это