Django REST框架DateTimeField格式显示Python Tim

2024-04-25 00:14:06 发布

您现在位置:Python中文网/ 问答频道 /正文

给一些模型

class Loan(models.Model):
    time_of_loan = models.DateTimeField()
    username = models.CharField()

我试图使用Django的REST框架中的ModelSerializer来序列化Loan。在

^{pr2}$

在使用serializer.data获取JSON格式时,当我第一次保存模型时,JSON表现良好。在

{
  'time_of_loan': '2016-06-20 00:00:00+08:00', 
  'username': 'doe'
}

然而,当我试图更新模型时,它“行为不端”,以pythondatetime格式出现。在

{
  'time_of_loan': datetime.datetime(2016, 6, 20, 7, 55, tzinfo=<UTC>), 
  'username': 'doe'
}

我需要做什么样的更改,以便在模型被序列化时,它仍然是我想要的第一种格式?在

第一次编辑

你能展示一下你正在做什么来更新这个对象吗

问题是我做了什么来更新模型。实际上,我把它用作一个审计日志,所以它取自一个实际的Django表单。在forms.py中:

id = forms.cleaned_data.get('id')
username = forms.cleaned_data.get('username')
loan = Loan.objects.filter(id=id) #Queryset with count() = 1

loan.update(username=username)
loan_obj = loan[0]
serializer = LoanSerializer(loan_obj)
print(serializer.data)

Tags: ofdjango模型idjsondata序列化time