用戶注冊(cè)功能
1.實(shí)際上就是數(shù)據(jù)庫(kù)創(chuàng)建一條數(shù)據(jù)
2.Django操作數(shù)據(jù)庫(kù)的模型
一.用戶模型設(shè)計(jì)(表的設(shè)置)
1.表字段的分析
- 賬號(hào)
- 密碼
- 手機(jī)
- 郵箱
- 郵箱是否有效
2.用戶模型設(shè)置
Django的開(kāi)發(fā)效率很高,內(nèi)置了很多功能,例如:權(quán)限驗(yàn)證
建議最好自定義User的模型(可延展性)
一個(gè)模型就是一個(gè)類
二.功能需求分析
1.接口設(shè)計(jì)思路
- 分析業(yè)務(wù)邏輯布卡,明確需要設(shè)計(jì)的幾個(gè)相關(guān)業(yè)務(wù),將每個(gè)子業(yè)務(wù)當(dāng)做一個(gè)接口分析
- 分析接口的功能嚷堡,明確接口的訪問(wèn)方式以及返回?cái)?shù)據(jù)
- 接口的請(qǐng)求方式
GET
PUT
POST
DELETE
- 接口的URL定義
- 需要接受什么參數(shù)(路徑,查詢參數(shù)艇棕,表單蝌戒,json)
- 返回的數(shù)據(jù)以及數(shù)據(jù)格式
- 接口的請(qǐng)求方式
2.注冊(cè)功能分析
- 流程
- 功能接口
發(fā)送一次請(qǐng)求,就要一個(gè)接口
- 注冊(cè)頁(yè)面
- 圖形驗(yàn)證碼
- 用戶名校驗(yàn)
- 手機(jī)號(hào)碼校驗(yàn)
- 短信驗(yàn)證碼
- 注冊(cè)保存用戶數(shù)據(jù)
三.注冊(cè)頁(yè)面
1.接口設(shè)計(jì)
1.1說(shuō)明
條目 | 說(shuō)明 |
---|---|
請(qǐng)求方法 | GET |
url定義 | /user/register/ |
參數(shù)格式 | 無(wú)參數(shù) |
1.2返回的數(shù)據(jù)
注冊(cè)頁(yè)面的 html
2.1視圖
2.2url
四.圖形驗(yàn)證碼功能
1.接口設(shè)計(jì)
1.1說(shuō)明
條目 | 說(shuō)明 |
---|---|
請(qǐng)求方法 | GET |
url定義 | /image_code/ |
參數(shù)格式 | 查詢參數(shù) |
1.2參數(shù)說(shuō)明
條目 | 類型 | 是否必須 | 描述 |
---|---|---|---|
rand | 字符串 | 否 | 隨機(jī)浮點(diǎn)數(shù)字符串 |
1.3返回?cái)?shù)據(jù)
驗(yàn)證碼圖片
def image_code_view(request):
'''
生成驗(yàn)證碼
url : '/image_code/'
:param request:
:return:
'''
#1.生成驗(yàn)證碼沼琉,隨機(jī)生成字符串北苟,生成圖片
text ,image = captcha.generate_captcha()
#2.后端保存驗(yàn)證碼,為了校驗(yàn)
#保存在session中
request.session['image_code']=text
request.session.set_expiry(constants.IMAGE_CODE_EXPIRS)
#過(guò)期時(shí)間
#3.記錄日志
logger.info('Image code:{}'.format(text))
#4.返回驗(yàn)證碼圖片
return HttpResponse(content=image,content_type='image/jpg')
五.點(diǎn)擊刷新
$(()=>{
//1.點(diǎn)擊刷新驗(yàn)證碼
$('.captcha-graph-img img').click(function () {
$(this).attr('src','/image_code/?rand=' + Math.random())
});
注意要在
register.html
里面挖坑填坑
最后上傳碼云
$ git add .
$ git commit -m 'update projects'
$ git push origin master