Я пытаюсь выполнить итерации через поля, поскольку они записаны в рамках моей модели:
в настоящее время я использую это:
def attrs(self):
for attr, value in self.__dict__.iteritems():
yield attr, value
но порядок кажется в значительной степени случайным :(
Какие-либо идеи?
Атрибут _meta
в классах и экземплярах Model
- это django.db.models.options.Options
, который обеспечивает доступ ко всем видам полезной информации о рассматриваемая Модель
.
Для полей он выдаст их в том порядке, в котором они были созданы (то есть в том же порядке, в котором они были объявлены).
def attrs(self):
for field in self._meta.fields:
yield field.name, getattr(self, field.name)