首页 > 解决方案 > 如何防止用户两次提交相同的表单

问题描述

我的视图和模型中有以下代码。但我想要一个用户不能两次提交同一个表单的情况。一旦用户提交表单,他或她只能看到已提交内容的预览,但无法提交相同的表单。任何帮助将不胜感激。谢谢

#views.py
def index(request):
    form = MembershipForm()
    if request.method == 'POST':
       form = MembershipForm(request.POST)
       if form.is_valid():
          form.save()
          return redirect("home")
    return render(request, 'index.html', {'form': form)


#models.py
class Membership(models.Model):
    fullname = models.CharField(max_length=500, blank=True, null=True)
    location = models.IntegerField(default='0',blank=True, null=True)
    department = models.IntegerField(default='0',blank=True, null=True)
    last_update = models.DateTimeField(auto_now_add=False, auto_now=True)

    def __str__(self):
        return  str(self.fullname)
    

标签: pythondjango

解决方案


推荐阅读