У меня есть модель, содержащая изображение профиля пользователя, а также их информацию. Я заинтересован в получении запроса для ТОЛЬКО изображений профиля. Моя идея состоит в том, чтобы получить запрос всех профилей, а затем добавить каждый профиль в список, если изображение существует в профиле. Это не работает. Я получаю следующую ошибку:
Объект 'NoneType' не имеет атрибута 'append'
Можете ли вы сказать мне, где я ошибся?
images = UserProfile.objects.filter(user=user)
validatedimages = None
for image in images:
if bool(image.image) == True:
validatedimages = validatedimages.append(image.image)
profileimages = validatedimages
Спасибо!
Это связано с тем, что validatedimages
является None
в вашей области. Итак, инициализируйте validatedimages
с пустым списком, как показано ниже,
validatedimages = []
поэтому ваш код будет таким,
images = UserProfile.objects.filter(user=user)
validatedimages = [] # change is here <<<<
for image in images:
if bool(image.image) == True:
validatedimages.append(image.image) # change is here <<<<
profileimages = validatedimages
validatedimages
внутри цикла.
append
кvalidatedimages
которыхNone
. Вы, вероятно, хотите инициализироватьvalidatedimages
в виде списка (validatedimages = []
). Вы также не хотите переназначать эту переменную в вашем цикле - просто добавьте ее.