在django中使用块格式而不是内联格式创建夹具
我正在使用在django中使用块格式而不是内联格式创建夹具,django,fixtures,pyyaml,Django,Fixtures,Pyyaml,我正在使用pyyaml。 我正在使用以下命令在django项目中创建装置: python manage.py dumpdata app.ModelName --format=yaml > fixtures/dev/fixture_name.yaml 我得到的输出是: - fields: {active: true, created_at: !!timestamp '2016-11-14 10:43:40.221602', age: 54, updated_at: !!times
pyyaml
。
我正在使用以下命令在django项目中创建装置:
python manage.py dumpdata app.ModelName --format=yaml > fixtures/dev/fixture_name.yaml
我得到的输出是:
- fields: {active: true, created_at: !!timestamp '2016-11-14 10:43:40.221602', age: 54,
updated_at: !!timestamp '2016-11-14 10:43:40.221603', user_type: 1}
model: app.ModelName
pk: 1
我想要的是:
- fields:
created_at: 2016-11-14 10:43:40.220895
age: 54
user_type: 1
updated_at: 2016-11-14 10:43:40.220900
model: app.ModelName
pk: 1
如何实现这一点?在
manage.py
中,您调用的dump()
(或safe\u dump()
不正确。您应该使用参数调用它
dump(your_data, default_flow_style=False)
您还必须为
timestamp
提供一个representer,因为PyYAML不知道该类型。或者使用datetime.datetime
的子类,PyYAML知道如何表示它。manage.py的源代码在哪里?