Форум сайта python.su
0
Есть задача - загрузить в модель фото. Через форму. Но не могу найти - как это можно сделать не через FORM API.
Не могу понять, как получить файлы из формы <input type='file' ….>
При отправке request.files пуст, ну и остальные реквесты соответственно не содержат ничего. Как быть?
Офлайн
4
Код давайте, модель, форму, вьюшку.
Офлайн
0
bu_Да не вопрос.
Код давайте, модель, форму, вьюшку.
<form name="add_avatar" enctype="multipart/form-data"> <input type="file" name="avatar" accept="image/*"> <input type="text" value="5" name="code" readonly style="display: none;"> </form>
"Отправить": function() { var theForm = $(document.forms['add_avatar']).serialize() $.ajax({ type: 'GET', url: 'usl', data: theForm, success: function(data) { var obj = jQuery.parseJSON( data ) if (obj.code == 1){ setTimeout("window.location.href = 'url'", 300); } else { $('.validateTips').html(obj.request) } }, error: function(xhr, str){ $('.validateTips').html('Возникла ошибка: ' + xhr.responseCode); } });
MultiValueDictKeyError at url "'avatar'"
Отредактировано xxnikolayxx (Дек. 18, 2013 23:23:47)
Офлайн
0
Может быть $.ajax подводит…
Офлайн
0
xxnikolayxxПогуглил, действительно дело в JavaScript. Ajax не умеет файлы загружать, нужно костыли какие-то искать…
Может быть $.ajax подводит…
Офлайн
0
bu_Вопрос решен, спасибо, что натолкнул на мысль =)
Код давайте, модель, форму, вьюшку.
Офлайн
22
Вопрос решен, спасибо, что натолкнул на мысль =)а как решен?
Офлайн
13
xxnikolayxxПользуюсь вот таким аплоадером. Хорошо дружит с Django
Погуглил, действительно дело в JavaScript. Ajax не умеет файлы загружать, нужно костыли какие-то искать…
Если все-таки кто-то знает решение, буду благодарен.
Офлайн
0
ilnurРаньше отправлял данные через ajax, а теперь отправляю обычным способом - через action формы. Результат обработки формы передаю в переменной result.
Офлайн
58
Пользуюсь jquery. Проблем с загрузкой файлов через аякс не наблюдал 
Офлайн