У меня есть форма, которая создает новую запись в БД.Это работает из-за AJAX.У меня есть аргумент «id», который создается автоматически при создании новой записи (после заполнения формы).Я хочу использовать этот идентификатор, потому что мне нужно перенаправить пользователей на страницу /127.0.0.1:8000/, когда они заполняют форму или, возможно, просто распечатывают эту ссылку на странице.Как я могу это сделать?
views.py
def add_new(request):
""" Function which upload new file to UploadModel. """
form_upload = UploadForm(request.POST, request.FILES, prefix='upload_form')
if form_upload.is_valid() and request.is_ajax():
new_file = form_upload.save(commit=False)
if request.user.is_authenticated:
new_file.author = request.user
new_file.created_date = date.today()
new_file.is_worked = True
if new_file.ended_date <= date.today():
new_file.is_worked = False
new_file.delete()
else:
new_file.is_worked = True
new_file.save()
return redirect('index')
form_upload = UploadForm()
return render(request, 'sharing/index.html', {'form_upload': form_upload})
js file
function upload(event) {
event.preventDefault();
var data = new FormData($('form').get(0));
$.ajax({
url: $(this).attr('data-url'),
type: $(this).attr('method'),
data: data,
cache: false,
processData: false,
contentType: false,
success: handleSuccess(),
});
return false;
}
function handleSuccess(){
$("form")[0].reset();
alert('Success uploading!');
window.location.href = '/';
}
$(function() {
$('form').submit(upload);
});