2010-04-17 99 views
2

我有一个名为change_priority的Django视图。我使用逗号分隔的值列表向这个视图发布请求,这些值基本上是我模型中项目的顺序。数据看起来像这样:在Django中排序项目列表

1,4,11,31,2,4,7 

我有一个模型称为项目,它有两个值 - ID和优先级。一旦得到这个帖子请求,我如何根据列表顺序来设置项目的优先级。所以我在数据库中的数据看起来像。

1,1 
4,2 
11,3 
31,4 
2,5 
4,6 
7,7 

谢谢你们。

回答

2

你并没有真正详细说明你是如何接收信息的,但是这里有一个刺探。

order = data.split(',') # convert data string to a list 
objects = MyModel.objects.in_bulk(order) 
for i, id in enumerate(order): 
    obj = objects['id'] 
    obj.priority = i 
    obj.save() 
+0

嗨丹尼尔。这看起来很不错。谢谢。 – 2010-04-17 12:16:00