Вы можете получить значения, используя field.get_attname()
, чтобы получить имя атрибута, а затем получить доступ к getattr(self, field.get_attname())
:
class BaseModel(models.Model):
# …
def get_values(self):
return {
field.name: <b>getattr(self, field.get_attname())</b>
for field in <b>cls</b>._meta.fields
}
После этого будет возвращен словарь, который сопоставляет имена полей с соответствующий объект.
или в виде списка значений:
class BaseModel(models.Model):
# …
def get_values(self):
return [
<b>getattr(self, field.get_attname())</b>
for field in <b>cls</b>._meta.fields
]