AttributeError: 'NoneType' object has no attribute 'has_header'
18 мая 2016 г. 5:53
Когда возникает ошибка следующего рода:
if not response.has_header('Last-Modified'): AttributeError: 'NoneType' object has no attribute 'has_header'
то причина может быть самая разнообразная. Чаще всего, какой-то метод не возвращает response, поэтому проверьте все свои views на то, что они возвращают HTTPResponse, а также проверьте все переопределённые методы в классах.
Так, например, однажды мой переопределённый метод change_view в классе admin ничего не возвращал при определённом условии:
def change_view(self, request, object_id, form_url='', extra_context=None): obj = self.model.objects.get(id=object_id) for color in obj.colors.all(): for pic in color.pics.all(): # some code return super(ProductAdmin, self).change_view(request, object_id, form_url, extra_context)
Как видите, если obj.colors.all() пуст, то change_view ничего не вернёт (а точнее вернёт None), а затем произойдёт ошибка. Причём по трейсбеку эту ошибку я не смог отследить, и из-за этого я её не так быстро исправил.
Надеюсь, ваша ошибка найдётся быстро :)
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 0