Как преобразовать объект модели django в dict со всеми его полями? Все в идеале включает внешние ключи и поля с editable = False.
Позвольте мне уточнить. Допустим, у меня есть модель Django, как показано ниже:
from django.db import models
class OtherModel(models.Model): pass
class SomeModel(models.Model):
normal_value = models.IntegerField()
readonly_value = models.IntegerField(editable=False)
auto_now_add = models.DateTimeField(auto_now_add=True)
foreign_key = models.ForeignKey(OtherModel, related_name="ref1")
many_to_many = models.ManyToManyField(OtherModel, related_name="ref2")
В терминале я сделал следующее:
other_model = OtherModel()
other_model.save()
instance = SomeModel()
instance.normal_value = 1
instance.readonly_value = 2
instance.foreign_key = other_model
instance.save()
instance.many_to_many.add(other_model)
instance.save()
Я хочу преобразовать это в следующий словарь:
{'auto_now_add': datetime.datetime(2015, 3, 16, 21, 34, 14, 926738, tzinfo=<UTC>),
'foreign_key': 1,
'id': 1,
'many_to_many': [1],
'normal_value': 1,
'readonly_value': 2}
Вопросы с неудовлетворительными ответами:
Django: преобразование всего набора объектов модели в один словарь
Как я могу превратить объекты Django Model в словарь и сохранить их внешние ключи?