2014-01-20 4 views
1

Я создал форму мастера, которая работала до тех пор, пока я не добавил ImageField.ImageField и Django Wizard Form

Когда я получил, чтобы отправить форму с выбранным файлом изображения, я возвращаюсь на страницу, говоря, что требуется ImageField.

Я создал MEDIA_ROOT и у меня это работает.

Вот фрагменты кода, я думаю, что в вопросе:

models.py

# CreatePuzzleWizard forms 
class uploadForm(forms.Form): 
    puzzle_image  = forms.ImageField() 
    puzzle_name   = forms.CharField(max_length=30, widget=forms.TextInput(attrs={'class':'form-control'})) 
    puzzle_description = forms.CharField(max_length=300, widget=forms.TextInput(attrs={'class':'form-control'})) 

views.py

class CreatePuzzleWizard(SessionWizardView): 
    template_name = "create.html" 
    file_storage = FileSystemStorage(location=os.path.join(settings.MEDIA_ROOT, 'tmp')) 

    def done(self, form_list, **kwargs): 
     form_data = process_form_data(form_list) 
     return render('complete.html', {'form_list', form_list}) 

def process_form_data(form_list): 
    form_data = [form.cleaned_data for form in form_list] 

    # do stuff with form data 

    return form_data 

Я получаю этот вопрос:

http://imgur.com/vFSuprr

Я не могу найти проблему в Интернете. Я использую Django 1.6.1

ответ

1

Джанго Docs указать, что, к сожалению, мало работы, чтобы сделать при связывании загруженного файла в поле формы:

https://docs.djangoproject.com/en/dev/ref/forms/api/#binding-uploaded-files-to-a-form

+0

получил неожиданное ключевое слово аргумента «upload_to ', Я попытался, но это не сработало. – user3043594

+0

Извините! К счастью, я нашел информацию в Django Docs. –

+0

ах! Это оказалось так:

{% csrf_token%} Оказывается, для этого нужен endctype ... – user3043594

Смежные вопросы