хранить несколько изображений в файловой системе и все ссылки в базе данных - PullRequest
0 голосов
/ 14 ноября 2018

Я использую ImageField поля в моей форме и модели для загрузки изображений, но мне нужно иметь несколько изображений, которые просто хранят одно изображение и одну ссылку в базе данных, это мой код:

#models.py
class mymodel(models.Model):
    imgs = models.ImageField(upload_to='uploads/%Y/%m/')

#forms.py
class myform(forms.Form):
    imgs = forms.ImageField(widget=forms.ClearableFileInput(attrs={'id': 'file', 'accept': 'image/*', 'multiple': True}))

#views.py
def myview(request):
    if request.method == 'POST':
        form = myform(request.POST, request.FILES)
            if form.is_valid():
                modelo = mymodel()
                modelo.imgs = form.cleaned_data.get('imgs')
                modelo.save()

Когда я это делаю, сохраняю только одно изображение, даже если я выбираю 5, а в базе данных просто сохраняю путь к сохраненному изображению

Как я могу сохранить 5 изображений на диске и вбаза данных в одном регистре хранит ссылки на 5 изображений, используя что-то вроде ',' для разделения

извините за мой плохой английский, если вам нужна дополнительная информация, пожалуйста, спросите меня

1 Ответ

0 голосов
/ 15 ноября 2018

mymodel.imgs - это ImageField, которое поддерживает только одно поле. Вы можете попробовать использовать ArrayField (если вы используете postgres для своей базы данных), где дочернее поле - ImageField. Или вам нужно будет использовать фабрику форм .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...