I am trying to allow user to upload several pictures, but only one picture is saving to the database. This is my Model
from django.db import models
from django.contrib.auth.models import User
class File(models.Model):
files = models.FileField(upload_to='images/')
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='files')
next, the form for the upload looks like this:
from django import forms
from .models import File
class FileForm(forms.ModelForm):
class Meta:
model=File
fields=('files',)
widgets={'files':forms.FileInput(attrs={'id':'files','required':True,'multiple':True})}
finally, the view 'upload pics' is the following:
def upload_pics(request, user_id):
if request.method == "POST":
form = FileForm(request.POST, request.FILES)
files = request.FILES.getlist('file_field')
if form.is_valid():
pics = form.save(commit=False)
pics.user = request.user
pics.files = request.FILES[files]
return redirect("groups:index")
else:
form = FileForm()
render(request, 'accounts/account_form.html', {'form':form})
return render(request, 'accounts/account_form.html', {'form':form})
the problem is that only 1 picture is being saved. any help is really appreciated!