#django #http #redirect
#django #http #перенаправление
Вопрос:
Я пытаюсь использовать перенаправление django, но мне не повезло. Моя структура выглядит следующим образом:
число просмотров:
def pageOne(request):
return render(request, 'pageOne.html')
def pageTwo(request):
return render(request, 'pageTwo.html')
def addInstance(request):
instance = Model(name=request.POST['name'])
return redirect(pageTwoUrlName)
Затем на странице у меня есть кнопка (в приложении React, размещенном на узловом сервере, вызывается pageone.html ), чтобы добавить экземпляр модели, который вызывает addInstance через вызов jQuery ajax.
Кажется, что все три функции работают, я могу посетить URL-адреса обеих страниц.
Когда я добавляю экземпляр на первую страницу, я вижу, что в консоли Django происходит следующее:
[] "POST /addInstance/ HTTP/1.1" 302 0
[] "GET /pageTwo/ HTTP/1.1" 200 3741
Однако, и это та часть, которую я не получаю, экран браузера не перенаправляет на страницу ДВА.
В любом случае, любые советы будут высоко оценены!
Дерево каталогов проекта:
- [Папка приложения]
- [приложение]
- просмотры (с тремя функциями)
- url-адреса (с тремя URL-адресами)
- модели (с классом Model)
- [ядро]
- url-адреса (расширение для приложения / URL-адресов)
- [общедоступный]
- pageOne.html
- pageTwo.html
- [приложение]
- [dist]
- ReactItem.js
Комментарии:
1. можете ли вы поделиться своим деревом напрямую?
2. добавил его в исходное сообщение.
Ответ №1:
Примените следующие изменения в функции addinstance.
def addInstance(request):
instance = Model(name=request.POST['name'])
return redirect('core/public/pageTwo.html')
Комментарии:
1. Похоже, это не помогает. Перенаправление определенно вызывает относительный путь, так как это ошибка: не найдено: /addInstanceURL/core/public/settings.html