1
У меня есть класс с пользовательским геттером для конкретного ATTR:максимальная глубина рекурсии превысила поглотитель Джанго
class Item(a, b, c, d, models.Model):
title = Field()
description = Field()
a = Field()
_custom_getter = ['title','description']
def __getattribute__(self, name):
if name in self.custom_getter:
return 'xxx'
else:
return super(Item, self).__getattribute__(name)
этого код поднять RunetimeError
: maximum recursion depth exceeded while calling a Python object
, но когда я использую этот кусок кода:
class Item(a, b, c, d, models.Model):
title = Field()
description = Field()
a = Field()
def __getattribute__(self, name):
custom_getter = ['title','description']
if name in custom_getter:
return 'xxx'
else:
return super(Item, self).__getattribute__(name)
все работает, как я хочу. Wher - моя ошибка в первой части кода?
Я использую объект '.__ GetAttribute __ (самоощущение, '_custom_getter')' вместо 'само .__ ДИКТ __ [ '_ custom_getter'] ', поскольку он генерирует ту же ошибку, но спасибо за статью, я нашел решение Ther. – gargi258