【发布时间】:2014-05-04 13:53:50
【问题描述】:
假设我有一个类,例如:
class MyClass(models.Model):
attributeA = models.CharField(max_length=100)
attributeB = models.IntegerField()
attributeC = models.CharField(max_length = 150, blank=True, nullable = True)
attributeD = models.ForeignKey('ModelB',related_name='FK_modelB')
attributeE = models.ManyToManyField('ModelC')
我想要做的是获取每个属性的属性,而不仅仅是我得到的名称:
my_instance._meta.get_all_field_name()
(它给了我一个属性名称列表)。不,我想要的是,对于每个属性,知道他的类型是什么(CharField、IntegerField、ForeignKey、ManyToManyField...),如果它是 ForeignKey / ManyToManyField 以及所有元数据(如 max_length 等),则与谁相关。
其目的是将一个类序列化为 XML,如果它是 ManyToManyField、ForeignKey 或简单值,则 XML 中的表示会有所不同。
顺便说一句,如果有人知道一个很棒的 XML 类序列化器,那将对我有很大帮助!
感谢您的回复!
【问题讨论】:
-
内置serialization framework有什么问题?
-
我就是这么做的!我不知道 Django 有一个很好的序列化内置框架:)
标签: python xml django serialization