Python 3.5、Django 1.8、および PostgreSql 9.4 を使用しています。
したがって、get リクエストでフォームをレンダリングし、ユーザーがフォームを送信すると更新される編集メソッドが 1 つあります。Hers のコード
def edit_case(request, case_id):
case = get_object_or_404(Case, pk=case_id)
if request.method == 'POST':
data = request.POST.copy()
form = CaseEditForm(data, instance=case)
if form.is_valid():
res = form.save()
return HttpResponseRedirect(reverse("case_list"))
else:
form = CaseEditForm(instance=case)
variables = RequestContext(request, {
"form": form,
})
return render_to_response(
'sample/edit_case.html',
variables,
)
あるユーザーが同時に何かを更新している場合、前のトランザクションが成功しない限り、他のユーザーが何かを更新できない場合、または悲観的ロックを使用するよりも他のより良い提案がある場合など、行レベルのロックを追加したいと考えています。
私は知ってselect_for_update
いますが、次の場合にどのように実装されるかわかりませんform.save()
どんな助けでも本当に感謝します