国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

16.設(shè)計(jì)和實(shí)現(xiàn)用戶中心、修改密碼功能

whataa / 2942人閱讀

摘要:再增加一個(gè)修改密碼的頁(yè)面,界面和注冊(cè)的頁(yè)面是一致的,因此直接對(duì)做一些簡(jiǎn)單修改即可,如下修改密碼頁(yè)面對(duì)應(yīng)的是,視圖函數(shù)為,設(shè)計(jì)好頁(yè)面后先直接即可,以便看看效果。

現(xiàn)在我們來(lái)設(shè)計(jì)一個(gè)用戶中心的頁(yè)面,顯示用戶相關(guān)的信息,由于我們的Q&A demo比較簡(jiǎn)單,所以顯示的內(nèi)容也不用太多,我們來(lái)顯示用戶的頭像、注冊(cè)時(shí)間、發(fā)表的問(wèn)題數(shù)和評(píng)論數(shù),設(shè)計(jì)一個(gè)user.html,界面如下:

用戶的頭像或其他信息都可以通過(guò)上下文管理器返回的login_user去獲取,發(fā)布問(wèn)答和評(píng)論數(shù)直接在模板里使用length過(guò)濾器,之前的文章都有類似的部分。這個(gè)頁(yè)面通過(guò)點(diǎn)擊導(dǎo)航條的用戶進(jìn)去,對(duì)應(yīng)的url"/user/",視圖函數(shù)為user_center,直接render即可。
再增加一個(gè)修改密碼的頁(yè)面security.html,界面和注冊(cè)的頁(yè)面是一致的,因此直接對(duì)register.html做一些簡(jiǎn)單修改即可,如下:

修改密碼頁(yè)面對(duì)應(yīng)的url"/user/security/",視圖函數(shù)為security,設(shè)計(jì)好頁(yè)面后先直接render即可,以便看看效果。通過(guò)點(diǎn)擊user頁(yè)面的修改密碼進(jìn)入,因此對(duì)user頁(yè)面的修改密碼這個(gè)button增加onclick屬性如下:

此時(shí)頁(yè)面已經(jīng)可以發(fā)送POST數(shù)據(jù)了,再為視圖函數(shù)添加POST方法,最終security視圖函數(shù)如下:

def security():
    if request.method == "GET":
        return render_template("security.html")
    else:
        o_password = request.form.get("o_password")
        password1 = request.form.get("password1")
        password2 = request.form.get("password2")
        validate_func(o_password, password1, password2)
        g.user.password = generate_password_hash(password1)
        db.session.commit()
        return redirect(url_for("logout"))

獲取到舊的密碼以及兩次新的密碼之后,對(duì)其進(jìn)行驗(yàn)證,例如舊密碼是否正確,新密碼長(zhǎng)度是否足夠、兩次是否一樣等,我這里用validate_func做的驗(yàn)證(實(shí)際還沒(méi)寫這個(gè)函數(shù)),驗(yàn)證成功之后直接用g.user.password = generate_password_hash(password1)修改密碼,并用db.session.commit()提交到數(shù)據(jù)庫(kù),之后對(duì)當(dāng)前用戶進(jìn)行注銷,用戶使用新密碼即可登錄,這一部分就完成了。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/41299.html

相關(guān)文章

  • 微服務(wù)架構(gòu)說(shuō)明

    摘要:微服務(wù)架構(gòu)說(shuō)明簡(jiǎn)介微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成該任務(wù)。 微服務(wù)架構(gòu)說(shuō)明.md 簡(jiǎn)介 微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成...

    30e8336b8229 評(píng)論0 收藏0
  • 微服務(wù)架構(gòu)說(shuō)明

    摘要:微服務(wù)架構(gòu)說(shuō)明簡(jiǎn)介微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成該任務(wù)。 微服務(wù)架構(gòu)說(shuō)明.md 簡(jiǎn)介 微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成...

    galaxy_robot 評(píng)論0 收藏0
  • 微服務(wù)架構(gòu)說(shuō)明

    摘要:微服務(wù)架構(gòu)說(shuō)明簡(jiǎn)介微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成該任務(wù)。 微服務(wù)架構(gòu)說(shuō)明.md 簡(jiǎn)介 微服務(wù)是一種架構(gòu)風(fēng)格,一個(gè)大型復(fù)雜軟件應(yīng)用由一個(gè)或多個(gè)微服務(wù)組成。系統(tǒng)中的各個(gè)微服務(wù)可被獨(dú)立部署,各個(gè)微服務(wù)之間是松耦合的。每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成...

    CKJOKER 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<