承接上文,继续写登录效果
此时虽然已经添加数据库的数据,但是一直刷新浏览器会一直重复提交,导致数据库里数据会一直重复保存
这时就需要重定向,使得刷新浏览器数据库不会重复保存一个数据
转发:一次请求或者响应,请求地址没有发生变化,如果此时刷新页面会出现重做现象
重定向:一次以上的请求和响应,请求地址发生一次以上的变化,如果此时刷新页面不会发生重做现象
首先在views里修改代码加一个定义一个show:
然后修改urls,分别是自己app里和项目下:
重新运行项目再次提交会发现地址栏给了它一个不变的数字,并且刷新也不变,数据库也不会重复保存:
继续完善这个注册系统:
新用户注册要保证用户名不能重复,所以要修改models,编辑用户名添唯一约束:
再生成一个数据库表,然后创建,具体操作在上篇文章,编辑views里内容:
编辑add.html:
此时再次提交如果用户名重复会提示:
再来完成不用点击提交自动显示能不能使用用户名:
需要下载jquery放入在根目录新建的static目录下的js中:
在settings里最后添加语句:
这样就可以把js和django连接起来使用
然后在add里导入jquery,语句如下:
再次打开注册页面会发现自动识别用户名是否可以被注册了: