Django Rest框架自定义序列化一个字段 [英] Django Rest framework custom serialize a field
本文介绍了Django Rest框架自定义序列化一个字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我刚刚开始使用Django REST框架,并且需要在序列化时自定义一个DATETIME字段来unix epoch(integer)
I just started using Django REST framework and need to customize a DATETIME field to unix epoch (integer) when serializing it
我目前有
/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调用片段时,我得到STR格式的典型DATETIME。
When I call snippets through API, i get typical DATETIME in STR format .
如何更改SnippetSerializer以转换为EPOCH?此外,有人在发布信息时,会在EPOCH中回来,我需要将其转换为DATETIME。任何想法?
How can I change SnippetSerializer to convert to EPOCH. Also, when someone is posting information, it will come back to me in EPOCH, which I would need to convert to DATETIME . Any ideas?
推荐答案
请参阅下面的代码,这将有助于您解决问题。
Please see below code it will help you to solve your problem.
#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')
这篇关于Django Rest框架自定义序列化一个字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文