【发布时间】:2014-03-19 18:23:38
【问题描述】:
我有一个非常简单而明显的问题,我正在尝试搜索一段时间。
我有一个模型Picture,它有created_by、Province 和City 等外键。
我想要的是将所有模型字段序列化为json。
模型.py:
class Picture(models.Model):
name = models.TextField("Title", max_length=10000, null=True, blank=True)
meta_data = models.TextField("meta_data", null=True, blank=True)
created_by = models.ForeignKey(User, related_name="created_by")
city = models.ForeignKey(City, null=True, blank=True)
pro = models.ForeignKey(Province, verbose_name="Province")
class Province(models.Model):
name = models.CharField(max_length=50)
pi_meta_data = models.TextField(null=True, blank=True)
intro = models.CharField(max_length=1000, null=True, blank=True)
description = models.TextField(max_length=10000, null=True, blank=True)
class City(models.Model):
name = models.CharField(max_length=50)
pi_meta_data = models.TextField(null=True, blank=True)
intro = models.CharField(max_length=1000, null=True, blank=True)
description = models.TextField(max_length=10000, null=True, blank=True)
【问题讨论】:
-
您是否尝试将列名传递给
queryset.values()?我知道“神奇地生成”的想法很有吸引力,但在现实世界中并不是很有用。我正在使用生成简单字典或字典列表的特定 DTO 工厂;例如。def pictures_list_dto_factory(picture_queryset)或/和def picture_details_dto_factory(picture_instance)。您可以轻松地序列化这些工厂的输出,例如使用json.dumps。如果这不是您的解决方案,请提供有关您的用例的更多详细信息。
标签: python json django api serialization