0
私はかなりの間この問題に取り組んでいます。可能であれば助けてください...Django RESTオブジェクトの日付の時刻形式を変更してください
私はdatetime値の1つがUTC形式のRESTフレームワーク応答を持っています。私はこのフォーマットをよりフレンドリーなフォーマットに変更したいと思っています。
残りのフレームワーク出力:
{
"data": [
{
"id": "1",
"start_time": "2017-12-28T12:56:55-08:00",
},
{
"id": "2",
"start_time": "2017-12-28T12:14:10-08:00",
},
{
"id": "3",
"start_time": "2017-12-28T09:37:35-08:00",
},
]
}
ビュー:(表示中のstart_time形式を変更するには、私のコード)
serializer = ChangeLogSerializer(changelog['items'], many=True)
for log in serializer.data:
serializer.data[log]['start_time'] = log['start_time'].strftime('%Y-%m-%d %T')
serializers.py
class ChangeLogSerializer(serializers.ModelSerializer):
"""Serializer to map the Model instance into JSON format."""
class Meta:
"""Meta class to map serializer's fields with the model fields."""
start_time = serializers.DateField(format="%y-%m-%d %H:%M:%S")
model = ChangeLog
fields = ('id', 'sku', 'serial_num', 'mac', 'sw_ver',
'state', 'outcome', 'logfile', 'process',
'cm', 'site', 'port_num', 'term_srvr',
'start_time', 'end_time')
read_only_fields = ('start_time', 'end_time')
の
観察:
- serializer.dataは、[ログイン]このアイテム
- を更新するための正しい方法であるとは思われないエラーメッセージを表示します:ファイル「/root/venv/dashbaord/lib/python3.4/を(JSONEncoder、self).default(obj)
- 私のserializers.pyファイルでフォーマットを調整しようとしました:start_time =シリアライザ。 DateField(形式= "%y-%m-%d%H:%M:%S")ですが、何もしません。