Невозможно сохранить изображения в базе данных

я не могу сохранить изображения, содержащие URL-адрес в базе данных, это даст мне ошибку

if file and not file._committed: AttributeError: 'list' object has no attribute '_committed'

эта ошибка возникла в результате моих попыток сохранить это поцарапанное изображение с красивым супом

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

что-то вроде этого принесло изображения

images = [i['data-src'] for i in soup.find_all('img', {'class','attachment-jnews-750x375 size-jnews-750x375 lazyload wp-post-image'})]

https://people.net/wp-content/uploads/2021/03/ad1-746x375.jpg
https://people.net/wp-content/uploads/2020/08/caroon-1-600x375.jpg

почему этот код привел к указанной выше ошибке

Post.objects.create(
                title=title,
                content_1=paragraphs,
                image=images,
                sources=lnk,
            )

это мой пример кода model.py

         class Post(models.Model):
               title = models.CharField(max_length=250, blank = True, help_text='Maximum 160 Title characters.')
               image = models.FileField(upload_to='images', blank=True, null=True,  help_text='You must upload original image before continuing.')

но я получаю эту ошибку

if file and not file._committed: AttributeError: 'list' object has no attribute '_committed'

но если я сохраняю обычный файл jpeg, это всегда успех.

как мне сохранить эти очищенные изображения в модели

Ошибка кажется довольно очевидной. Вы передаете СПИСОК изображений в API, который ожидает одно изображение. Если у вас несколько образов, вам нужно будет использовать цикл, например for image in images: / Post.objects.create(...). И, кстати, это слово «соскоблили», а не «сломали». «Утилизировано» означает «выброшено в мусорное ведро».

Tim Roberts 30.03.2021 09:30

@TimRoberts, пожалуйста, вы могли бы просто показать мне пример, пожалуйста, покажите мне способы решить этот беспорядок

Precious Olufemi 31.03.2021 03:12

что время говорит, вы можете решить эту проблему, используя цикл for.

SerioUs 31.03.2021 03:18

Я назвал вам причины и исправление. Замените Post.objects.create( ... image=images ... ) на for image in images: / Post.objects.create( ... image=image ... ).

Tim Roberts 31.03.2021 03:50

Спасибо за ваш быстрый ответ, дорогой @TimRoberts, но у меня все еще есть ошибка на изображении / inde в изображениях: / Post.objects.create (title = title, content_1 = content, image = images, sources = lnk,)

Precious Olufemi 31.03.2021 04:08

Файл «<console>», строка 11 для изображения в изображениях: / Post.objects.create (^ SyntaxError: недопустимый синтаксис в /

Precious Olufemi 31.03.2021 04:09

Сэр @SerioUs, произошла ошибка при попытке выполнить ваш код, сэр. помогите пожалуйста Файл "<console>", строка 11 для изображения в изображениях: / Post.objects.create (^ SyntaxError: недопустимый синтаксис

Precious Olufemi 31.03.2021 04:11

@TimRoberts, когда косая черта / удаляется, он пропускает исключение или ошибку, что if file, а не file._committed: AttributeError: объект 'list' не имеет атрибута '_committed'

Precious Olufemi 31.03.2021 04:19
0
8
56
0

Другие вопросы по теме