user2086641
user2086641

Reputation: 4371

Django image file not getting uploaded

models.py

class Report(models.Model):
    user = models.ForeignKey(User, null=False)
    photo_files_attached = models.BooleanField('Photos', default=False)

forms.py

class MediaForm(forms.ModelForm):
    photo_files_attached = forms.FileField(label='Choose a file')
    class Meta:
        model = Report
        field = ['photo_files_attached']

views.py

def media(request):
    user = request.user  
    try:
        report = Report.objects.get(user=user.id)
    except:
        report = None
    mediaForm = MediaForm()
    if request.method =='POST':
        mediaForm = MediaForm(request.POST,request.FILES)
        if mediaForm.is_valid():
            media = Report(photo_files_attached = request.FILES['photo_files_attached'])
            media.save()


    return render(request, 'media.html',
                  {

                   'mediaForm':MediaForm,

                 })

I am trying to upload a image file through django and save it in database.Once the file is saved ,the images are get collecetd in media folder in project.But it is completely not working.May i know what i did wrong.

Upvotes: 0

Views: 118

Answers (1)

Hedde van der Heide
Hedde van der Heide

Reputation: 22449

As far as I can see you don't have a single FileField on your Model so where do you expect any uploaded files to be bound to your object?

You should either create your own saving logic in within the form.is_valid() scope or use a different approach overall.

Here's a single file example, using a modelform, update forms.FileField on django forms

Upvotes: 3

Related Questions