0

このようなコード(画像をアップロードするときの実行):

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

画像を1つずつアップロードする場合はうまく機能しますが、複数の画像を同時にアップロードすると、マルチアップロードjQueryプラグインを使用します。「gallery.photo_num」は無秩序になります

この問題を回避できるようにコードを変更するにはどうすればよいですか?

4

1 に答える 1

3

Django 1.4以降を使用していると仮定すると、次を使用できますselect_for_update

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

これにより、更新操作が発生するまで行がロックされます。

于 2012-09-05T14:39:17.853 に答える