首页 > 解决方案 > 从 django 表单在 mysql 中存储多个复选框

问题描述

我无法将选中的复选框值发送到 mysql 数据库。请帮助我找出我在代码中遗漏的内容。当我尝试提交表单时,它只是重定向到相同的表单而没有任何错误,并且以同样的方式它不会将值存储在数据库中。

视图.py

def personview(request):  
    if request.method == "POST": 
        form =PersonForm(request.POST)
        print(request.POST.getlist('choosetopics[]'))
        if form.is_valid():  
            try:
                form.save()


            except:  
                print("not valid")  
    else:  
        form = PersonForm()  

    return render(request,'person_list.html',{'form':form})

模型.py

class Person(models.Model):
    name = models.ForeignKey(CollegeAttributes, on_delete=models.SET_NULL, null=True)
    domain = models.ForeignKey(Domains, on_delete=models.SET_NULL, null=True)
    choosetopics = models.ForeignKey(domain_topics, on_delete=models.SET_NULL, null=True)

    def __str__(self):
        return self.name

标签: pythonmysqlcheckboxdjango-forms

解决方案


推荐阅读