Django表单不保存数据

问题描述

这是一个普通的表单填充代码,我在其中创建了表单并将request.post传递到其中。张贴请求数据已正确捕获,但在传递到表单后未保存。 django版本3.1是基本语言。

===view===
def adst(request):
    lists   = Site.objects.filter(deleted=False)
    country = Country.objects.filter(deleted=False)
    company = Company.objects.filter(deleted=False)
    region  = Region.objects.filter(deleted=False)
    location= Location.objects.filter(deleted=False)
    sbu     = SBU.objects.filter(deleted=False)
    delta   = {'status': True}
    if request.method == 'POST':
        print(request.POST)                                     # Print_Output
        request.POST                = request.POST.copy()
        request.POST['inserted_by'] = request.user.id
        form = SiteForm(request.POST)
        **if form.is_valid():**
            form.save()
    print(request.GET)                                          # Print_Output
    context = {'form' : SiteForm(),'list' : lists,'data' : delta,'sbu' : sbu,'country' : country,'company' : company,'region' : region,'location' : location}
    return render(request,'masters/site.html',context)

===Post Data===
<QueryDict: {'csrfmiddlewaretoken': ['sdtbHHn5OVAf19kkaJUlijHzURZEHNNLKm7PLnR6bxrodIKH4rbgB'],'country': ['India'],'company': ['GILI'],'region': ['north'],'location': ['Vikhroli'],'sbu': ['goejo nw'],'site': ['asdasd'],'status': ['on']}>

===Form===
class SiteForm(ModelForm):
    class Meta:
        model = Site
        fields = ['id','code','site','country','company','region','location','sbu','status','deleted','inserted_by','updated_by']

===Model===
class Site(models.Model):
    code        = models.CharField(max_length=250,null=True,blank=True,db_column='code')
    site        = models.CharField(max_length=250,db_column='site')
    country     = models.ForeignKey(Country,on_delete=models.CASCADE)
    company     = models.ForeignKey(Company,on_delete=models.CASCADE)
    region      = models.ForeignKey(Region,on_delete=models.CASCADE)
    location    = models.ForeignKey(Location,on_delete=models.CASCADE)
    sbu         = models.ForeignKey(SBU,on_delete=models.CASCADE)
    status      = models.BooleanField(default=True,db_column='status')
    deleted     = models.BooleanField(default=False,db_column='deleted')
    inserted_by = models.BigIntegerField(null=True,db_column='inserted_by')
    inserted_on = models.DateTimeField(auto_now_add=True,db_column='inserted_on')
    updated_by  = models.BigIntegerField(null=True,db_column='updated_by')
    updated_on  = models.DateTimeField(auto_now=True,db_column='updated_on')

    def __str__(self):
        return self.site
    
    def datamodify(self):
        return self.inserted_on >= timezone.now() - datetime.timedelta(days=1)
        return self.updated_on >= timezone.now() - datetime.timedelta(days=1)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...