【发布时间】:2016-11-25 17:43:47
【问题描述】:
我正在使用 Python 3.5、Django 1.8 和 PostgreSql 9.4。
所以我有一种编辑方法,在获取请求中我正在呈现表单,当用户提交表单时它会得到更新。她的密码
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() 的情况下它将如何实现
任何帮助将不胜感激
【问题讨论】:
标签: python django postgresql django-forms row-level-security