2016-11-25 48 views
0

は、ここに私のコードです:djangoでBinaryFieldを編集するには?

'image' cannot be specified for Upload model form as it is a non-editable field

しかし、私が変更されたときにFileFieldからBinaryFieldは、それが正常に動作している:

#models.py 
class Upload(models.Model): 
    #image = models.FileField() #working code 
    image = models.BinaryField() #not working 

#forms.py 
class UploadModelForm(forms.ModelForm): 
    class Meta: 
     model = Upload 
     fields = ('image') 
     labels = { 'image': "Upload Image" } 
     widgets = { 
      'image' : forms.FileInput(attrs={'multiple': True}) 
     } 

私は、それが次のエラーをスローすることを実行します

。問題は、私のデータベースで FileFieldにデータタイプ charがあり、それが私の望んでいないものです。私は、DataTypeが blobであることを望んでいます。

編集:

image = models.BinaryField(editable = True)

をし、それが動作していない: は私が試みていると言うことを忘れていました。

+0

ここでは、「ModelForm」に「BinaryField」を含めることはできません(https://docs.djangoproject.com/en/1.10/ref/models/fields/#binaryfield) " 'ModelForm'の代わりに' forms.Form'を試しましたか? –

+0

はい、私はそれを試して、それは正常に動作していますが、私は本当に 'ModelForm'を使用したいと思います。私はカスタム 'ModelForm'を作ることができますか?... – someone

答えて

関連する問題