【问题标题】:Django Rest framework custom serialize a fieldDjango Rest框架自定义序列化一个字段
【发布时间】:2013-10-15 05:17:37
【问题描述】:

我刚开始使用 Django REST 框架,需要在序列化时自定义一个 DATETIME 字段以适应 unix epoch(整数)

我现在有

/models.py
class Snippet(models.Model):
    created = models.DateTimeField(auto_now_add=True)

/serializers.py
class SnippetSerializer(serializers.ModelSerializer):
    class Meta:
        model = Snippet
        fields = ('created')

当我通过 API 调用 sn-ps 时,我得到 STR 格式的典型 DATETIME。

如何更改 SnippetSerializer 以转换为 EPOCH。此外,当有人发布信息时,它会在 EPOCH 中返回给我,我需要将其转换为 DATETIME 。有什么想法吗?

【问题讨论】:

    标签: django django-rest-framework


    【解决方案1】:

    请参阅下面的代码,它将帮助您解决问题。

    #models.py
    class Snippet(models.Model):
        created = models.DateTimeField(auto_now_add=True)
        def convert_to_epoc(self):
            #paste your conversion code here
            return result
    
    #serializers.py
    class SnippetSerializer(serializers.ModelSerializer):
        created = serializers.Field(source='convert_to_epoc')
        class Meta:
            model = Snippet
            fields = ('created')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-16
      • 2018-10-14
      相关资源
      最近更新 更多