社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  问与答

表单的 .save()方法 为什么不能把表单填写的数据 成功保存到数据中?

HelloSam • 9 年前 • 3424 次点击  
def reporttable(request):
report_table = RepairReport.objects.all()
pre_report_entering_form = ReportEnteringForm()
if  request.method == 'POST':
    pre_report_entering_form = ReportEnteringForm( request.POST )
    if pre_report_entering_form.is_valid():
        report_entering_form = pre_report_entering_form.save( commit = False )
        report_entering_form.save()
        return render_to_response('reporttable.html', RequestContext(request,
                                                                     locals(),
                                                                     )
                                  )
    else:
        return HttpResponse('hello world')
else:
    return render_to_response('reporttable.html',RequestContext(request,
                                                                {'report_entering_form': pre_report_entering_form, 'report_table':report_table}
                                                                )
                              )

以上是我的视图函数。我现在在表单上填写数据,点击保存按钮后,没有成功的把数据保存到数据库中,不知道为什么。请问应该怎么做?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/1208
 
3424 次点击  
文章 [ 2 ]  |  最新文章 9 年前
allenhuang1984
Reply   •   1 楼
allenhuang1984    9 年前

第二个else返回的不对吧?你最后的那个return语句是不是得放到最外层才行 我之前写过一个类似的 运行没问题啊

def create_product(request): if request.method == 'POST': form = ProductUEditorModelForm(request.POST, request.FILES)

    if form.is_valid(): 
        product = form.save(commit=False)
        product.author = "test"
        product.save()
        return index(request)
    else:
        print form.errors

else:
    form = ProductUEditorModelForm()

return render(request,'secondhand/create_product.html',{'form':form})
shen_gan
Reply   •   2 楼
shen_gan    9 年前

save函数需要自己写。在form的save函数中可存入数据库