【发布时间】:2014-08-17 19:19:56
【问题描述】:
我正在序列化一堆对象,用户 Django Rest Framework 并在前端使用 angularjs 检索信息。当我在浏览器中检查响应时,我返回的对象数组的所有字段都按字母顺序排列,而不是我在后端给出的排序说明。
是什么迫使这种按字母顺序排列的? Django Rest 框架还是 angularjs?这个顺序弄乱了我正在尝试创建的表。
data['objects'] = serializer.data
print data['objects'][0]
return Response(data)
从 django 打印输出
{'hard_weight': 0L, 'current_count': 8020L, 'mileage': 0L, 'route_type': None, 'route': u'NO SCHEDULE', 'destination': None, 'pickup_id
': 657L, 'specials': 900000L, 'soft_weight': 0L, 'misses': 0L, 'date': datetime.date(2030, 12, 31), 'estimated_hours': Decimal('0.00'),
'estimated_hours_unload': Decimal('0.00'), 'cancel': False}
console.log 返回数据:
cancel: false
current_count: 8020
date: "2030-12-31"
destination: null
estimated_hours: "0.00"
estimated_hours_unload: "0.00"
hard_weight: 0
mileage: 0
misses: 0
pickup_id: 657
route: "NO SCHEDULE"
route_type: null
soft_weight: 0
specials: 900000
更新/解决方案 我最终编写了这个函数来接收我的每个对象,并按照给定列表的顺序将它们放入一个数组中。
function convertObjects(objects, list){
blank = []
for(var i=0; i <objects.length; i++)
{
obj = []
object = objects[i]
for (var j=0; j<=list.length; j ++)
{
obj.push(object[list[j]])
};
blank.push(obj)
};
return blank
}
【问题讨论】:
标签: javascript angularjs django-rest-framework