Django models Django数据库中的布尔字段未更新

Django models Django数据库中的布尔字段未更新,django-models,django-views,django-templates,Django Models,Django Views,Django Templates,对我来说一切都很好(所以我想无论如何)。打开或关闭后,在切换复选框的帮助下,我收到一条消息,说我已成功打开或关闭布尔字段。但在我的Django数据库中,它似乎没有被单击或取消单击。为了更好地理解,我的代码如下 def PaperFrame(request): paper_frame = OrderItem.objects.get(id = request.POST['id']) paper_frame.paper = request.POST['paperchoice'] ==

对我来说一切都很好(所以我想无论如何)。打开或关闭后,在切换复选框的帮助下,我收到一条消息,说我已成功打开或关闭布尔字段。但在我的Django数据库中,它似乎没有被单击或取消单击。为了更好地理解,我的代码如下

def PaperFrame(request):
    paper_frame = OrderItem.objects.get(id = request.POST['id'])
    paper_frame.paper = request.POST['paperchoice'] == 'True'
    paper_frame.save()
    messages.info(request, "Your chosen paper frame has been saved")
    return redirect('business:graphic', slug=paper_frame.id)



class OrderItem(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    item = models.ForeignKey(Item, on_delete=models.CASCADE)
    paper = models.BooleanField(default=False, blank=True)
    


Templates
<div class="frame_click">
            <form action="" method="POST">
            {% csrf_token %}
            <label class="switch">
              <input type="checkbox" id="changeswitch" value="{{paper_frame.paper}}">
              <span class="slider round"></span>
            </label>
            </form>
            </div>


jquery functionality
$(document).ready(function(){
        $('#changeswitch').change(function(){
        $.post("/choosepaper/",{
          id: "{{items.id}}",
          paperchoice: this.checked,
          csrfmiddlewaretoken: '{{csrf_token}}'
        });
      });
      });
def纸框(请求):
paper\u frame=OrderItem.objects.get(id=request.POST['id'])
纸张_frame.paper=request.POST['paperchoice']=='True'
纸框保存()
messages.info(请求“您选择的纸框已保存”)
返回重定向('business:graphic',slug=paper\u frame.id)
类OrderItem(models.Model):
user=models.ForeignKey(settings.AUTH\u user\u MODEL,on\u delete=models.CASCADE)
item=models.ForeignKey(item,on_delete=models.CASCADE)
纸张=模型.布尔字段(默认值=假,空白值=真)
模板
{%csrf_令牌%}
jquery功能
$(文档).ready(函数(){
$('#changeswitch').change(函数(){
$.post(“/choosepper/”{
id:“{items.id}}”,
paperchoice:这个,检查过了,
csrfmiddlewaretoken:“{{csrf_令牌}”
});
});
});

每次单击复选框时,尝试这样的操作来翻转布尔值。

这就像魔术一样发生。。。万分感谢
def PaperFrame(request):
    paper_frame= get_object_or_404(OrderItem,id = request.POST['id])
    paper_frame.paper= not paper_frame.paper
    paper_frame.save()
    messages.info(request, "Your chosen paper frame has been saved")
    return redirect('business:graphic', slug=paper_frame.id)