Django : Структура API с функциями перенаправления или декораторами
Я новичок в Django и не уверен в структуре своего API. Есть боковая панель со списком приложений. У меня есть одно, которое предназначено для загрузки файлов. Я хочу, чтобы, когда пользователь нажимает на приложение для загрузки файлов, появлялась страница с выпадающим списком для выбора клиента. Затем, когда он выбирает клиента, он перенаправляется на страницу загрузки со значением выбранного клиента, потому что это значение должно быть сохранено в базе данных при загрузке файла и отображаться в шаблонах. Когда пользователь хочет изменить клиента, он должен вернуться на предыдущую страницу и изменить выбранного клиента
Как мне это сделать? Что является наиболее эффективным и логичным с точки зрения представлений и декораторов ?
Вот что я сделал. Я думаю, что это не эффективно.Пользователь нажимает на url upload, он попадает в представление upload, где id_client selected инициализируется в None. Поэтому он перенаправляется в представление selectclient, где пользователь выбирает клиента и возвращается в представление upload
def upload(request, idclient = None):
if idclient == None :
return redirect(selectclient)
else :
# The upload app
return render(request, 'base/upload.html', context)
def selectclient(request) :
context = initialize_context(request)
form_client = SelectClient(request.POST, user=request.user)
if form_client.is_valid():
id_customer_request = request.POST.get("ID_Customer")
return redirect(upload, idclient=id_customer_request)
context['form_client'] = form_client
return render(request, 'base/selectclient.html', context)