如何在Django中同时处理修改数据库?

时间:2012-09-05 11:29:08

标签: mysql django

这样的一些代码(上传图像时执行):

gallery = Gallery.objects.get(id=album_id)
index = gallery.photo_num +1                #index will be used in later
gallery.photo_num = index
gallery.save()

在逐个上传图片时效果很好,但如果我同时上传多张图片,则使用多上传jQuery插件。“gallery.photo_num”将会无序

如何修改我的代码以便我可以避免此问题

1 个答案:

答案 0 :(得分:3)

假设您使用的是Django 1.4+,则可以使用select_for_update

gallery = Gallery.objects.select_for_update().get(id=album_id)

这将锁定行,直到发生更新操作。