Wondermarin
@Wondermarin

Отправка файлов AJAX + Django?

Здравствуйте, у меня возникла проблема.
Есть форма:
<form id="avatarUpload" action="{% url 'Home:Edit' %}" method="POST" enctype="multipart/form-data">
    {% csrf_token %}
    <input type="file" name="{{ form.avatar.name }}" id="{{ form.avatar.name }}">
</form>

Вне формы есть кнопка, при нажатии на которую должен произойти AJAX запрос:
$('.action__button.primary').on('click', function() {
    $('#avatarUpload').submit(function() {
        $.ajax({
            type: $(this).attr('method'),
            url: $(this).attr('action'),
            data: $(this).serialize(),
            success: function() {
                console.log('OK')
            }
        })
    })
})

Но ничего не происходит.

views.py:
if request.method == 'POST':
        user_form = UserEditForm(data=request.POST, instance=request.user)
        form = ProfileEditForm(data=request.POST, files=request.FILES, instance=request.user.profile)
        if form.is_valid and user_form.is_valid:
            user_form.save()
            form.save()
            return redirect('Home:Edit')
        if request.is_ajax:
            form.save()
  • Вопрос задан
  • 474 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы