Django JQuery Ajax File Upload

Próbowałem przesłać prosty plik tekstowy już od wielu godzin, ale wciąż nie mogę go uruchomić.

Ciągle otrzymuję nieprawidłowe formularze, mówiąc, że brakuje mi „file_source”.

Dlaczego „źródło_pliku” nie jest publikowane?

Mam go także do wysłania „source_source”, ale nadal mówi, że go brakuje. Jakiego typu element powinien zostać przekazany do Django FileFiled?

Formularz Django:

class FileUploadForm(forms.Form):
    file_source = forms.FileField()

Django Template (renderuje formularz):

<form action="/upload/" method="post" id="file-upload-form" enctype="multipart/form-data"> {% csrf_token %}
    {{ form }}
    <button type="submit" class="btn btn-primary" id='upload-btn'>Upload</button>
</form>

JQuery / Ajax Upload:

function uploadFile() {
$.ajax({
    data: $(this).serialize(),
    type: $(this).attr('method'),
    url: $(this).attr('action')
});
return false;
}

$(function() {
     $('#file-upload-form').submit(uploadFile);
});

Widok Django, który otrzymuje POST:

def upload_view(request):
if request.is_ajax():
    form = FileUploadForm(request.POST)
    if form.is_valid():
        print 'valid form'
    else:
        print 'invalid form'
        print form.errors
return HttpResponseRedirect('/ingest/')

questionAnswers(3)

yourAnswerToTheQuestion