一、基本逻辑:(Model、Template、View的协作模式)
服务器通过URL提交请求—>在url文件中搜索路径('^ form /$')—>调用相应view函数(‘showform’)—>运行template—>执行文件‘form.html’—>沿路径action提交数据—>根据model收集数据,存入数据库—>view函数(‘saveform’)收集响应,并跳转到路径显示页面—>表单提交成功
二、具体操作:
1、确认数据库已运行:开始—>服务—>Mysql5.7运行状态:启动
注:安装pymysql
pip --trusted-host pypi.python.org install pymysql
2、在设置文件中确保设置template目录(template语法可详见Shirely老师的Python Web开发系列课程之——蕴含在Django中的MTV模式)
3、在model中定义类userinfo(定义数据库收集数据类型、长度、字段名)
4、view中定义函数:(request.method=='POST')
1)页面交互时表单展示函数(‘showform’)
2)调用model类,保存提交数据函数(‘saveform’)
在收集响应时使用字典user_info=userinfo()
最终保存使用user_info.save()
执行结果转到提交成功页面 return render( request, 'showinfo.html', {'user_info': user_info })
注: {%csrf_token%}:防止跨站csrf攻击
利用模板渲染,进行传参:通过{ }将提交数据调入saveform,在提交成功页面显
附:提交表单
提交成功页面显示: