亚洲精品中文免费|亚洲日韩中文字幕制服|久久精品亚洲免费|一本之道久久免费

      
      

            <dl id="hur0q"><div id="hur0q"></div></dl>

                Flask博客實戰(zhàn) – 創(chuàng)建用戶相關(guān)應(yīng)用

                Flask博客實戰(zhàn) - 創(chuàng)建用戶相關(guān)應(yīng)用

                在前幾個章節(jié)我們已經(jīng)詳細(xì)地說了創(chuàng)建視圖及url的方式,也熟悉了基本的增刪改查方法,那么我們就可以利用之前所學(xué)的知識來實現(xiàn)用戶相關(guān)應(yīng)用,并構(gòu)造好基本的登錄注冊功能視圖!

                最開始我們創(chuàng)建目錄的時候就在app文件夾下預(yù)留了一個auth的文件夾,相關(guān)登錄注冊以及用戶相關(guān)的數(shù)據(jù)及視圖模板都放到這個文件夾下邊

                創(chuàng)建用戶相關(guān)應(yīng)用

                在app/auth/目錄下參照blog目錄創(chuàng)建相關(guān)文件,這次我們將models和views放到文件夾中,使其成為一個塊

                1、創(chuàng)建一個models的文件夾并在其內(nèi)部創(chuàng)建一個__init__.py的文件及auth.py的文件

                2、創(chuàng)建一個views的文件夾并在其內(nèi)部創(chuàng)建一個__init__.py的文件及auth.py的文件

                3、創(chuàng)建一個templates的文件夾并在其內(nèi)部創(chuàng)建一個login.html的文件及register.html的文件

                目錄結(jié)構(gòu)如下

                app/ auth/ __init__.py models/ __init__.py auth.py views/ __init__.py auth.py templates/ login.html register.html static/ blog/ __init__.pyRealProject/

                創(chuàng)建用戶模型User

                在models/auth.py文件中創(chuàng)建用戶模型如下:

                from datetime import datetimefrom RealProject import dbclass BaseModel(db.Model): “””基類模型 “”” __abstract__ = True add_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow, ) # 創(chuàng)建時間 pub_date = db.Column(db.DateTime, default=datetime.utcnow, onupdate=datetime.utcnow, nullable=False) # 更新時間class User(BaseModel): “””用戶模型 “”” id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(128), unique=True, nullable=False) password = db.Column(db.String(320), nullable=False) avatar = db.Column(db.String(200), nullable=True) is_super_user = db.Column(db.Boolean, nullable=True, default=False) # 超級管理員標(biāo)識 is_active = db.Column(db.Boolean, nullable=True, default=True) # 是否為活躍用戶 is_staff = db.Column(db.Boolean, nullable=True, default=False) # 是否允許登錄后臺 def __repr__(self): return ” % self.username

                在models/__init__.py中引入用戶模型

                from .auth import User

                在RealProject/__init__.py工廠函數(shù)中注冊模型models

                def create_app(test_config=None): app = Flask(__name__, instance_relative_config=True) if test_config is None: CONFIG_PATH = BASE_DIR / ‘RealProject/settings.py’ app.config.from_pyfile(CONFIG_PATH, silent=True) else: # test_config為一個字典 app.config.from_mapping(test_config) db.init_app(app) migrate.init_app(app, db) login_manager.init_app(app) # 注冊視圖 register_bp(app) # 注冊模型 from app.blog import models from app.auth import models return app

                同步數(shù)據(jù)庫

                flask db migrateflask db upgrade

                備注:在同步之前記住一定要導(dǎo)出環(huán)境變量

                創(chuàng)建登錄注冊視圖

                在app/auth/views/auth.py文件中創(chuàng)建登錄注冊視圖

                from flask import render_template, Blueprint, redirect, url_forfrom ..models import authbp = Blueprint(‘auth’, __name__, url_prefix=’/auth’, template_folder=’../templates’, static_folder=’../static’)@bp.route(‘/login’, methods=[‘GET’, ‘POST’])def login(): if request.method == ‘POST’: # 登錄相關(guān)邏輯代碼 return render_template(‘login.html’)@bp.route(‘/register’, methods=[‘GET’, ‘POST’])def register(): if request.method == ‘POST’: # 注冊相關(guān)邏輯代碼 # 注冊成功跳轉(zhuǎn)到登錄頁 return redirect(url_for(‘auth.login’)) return render_template(‘register.html’)

                這兩個視圖我們完全采用了藍(lán)圖方式綁定url和視圖函數(shù),其中template_folder和static_folder的路徑一定要設(shè)置正確,否則找不到位于該目錄下的templates文件夾,就無法正確加載!

                在app/auth/views/__init__.py文件中引入藍(lán)圖

                from .auth import bp

                在RealProject/__init__.py中的register_bp()函數(shù)中注冊藍(lán)圖

                def register_bp(app:Flask): # 注冊視圖方法 from app.blog import views as blog from app.auth import views as auth app.register_blueprint(blog.bp) # 注冊藍(lán)圖 app.register_blueprint(auth.bp) app.add_url_rule(rule=’/’, endpoint=’index’, view_func=blog.index)

                到這里我們的用戶模型及登錄注冊視圖的基本框架就已經(jīng)做好了,下一章節(jié)我們將實現(xiàn)博客的登錄注冊功能!

                鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
                用戶投稿
                上一篇 2022年6月16日 21:19
                下一篇 2022年6月16日 21:20

                相關(guān)推薦

                • ios手游模擬器(手游模擬器ios)

                  本文主要講的是ios手游模擬器,以及和手游模擬器ios相關(guān)的知識,如果覺得本文對您有所幫助,不要忘了將本文分享給朋友。 哪個iOS模擬器能多開手游賬號?可以推薦個好用的模擬器給我嗎…

                  2022年11月27日
                • 短視頻策劃內(nèi)容的3個要點(短視頻策劃內(nèi)容怎么做)

                  短視頻在制作時,內(nèi)容框架非常重要。如果直奔主題,然后結(jié)束,聚卓告訴你,這樣的短視頻已經(jīng)過時了?,F(xiàn)在的短視頻需要框架的,但不是任何框架,它需要一種易于理解和消化的框架。而且,現(xiàn)在大多…

                  2022年11月27日
                • 美團(tuán)第三季度實現(xiàn)營收626億元,即時配送訂單量增至50億筆

                  新京報訊(記者秦勝南)11月25日,美團(tuán)發(fā)布業(yè)績公告顯示,第三季度營收為626億元,較去年同比增長28.2%,凈利潤為12.2億元。第三季度,美團(tuán)即時配送訂單數(shù)增長至50億筆。截至…

                  2022年11月27日
                • 存儲過程語法(sql server存儲過程語法)

                  今天小編給各位分享存儲過程語法的知識,其中也會對sql server存儲過程語法進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲過程基本語法…

                  2022年11月26日
                • 個人怎么做抖音帶貨(個人做抖音帶貨能賺錢嗎)

                  抖音如今是大家很熟悉的短視頻平臺,不過現(xiàn)在的抖音卻不只是短視頻那么簡單,它的功能非常豐富,其中一個就是可以帶貨,相信很多小伙伴都有在抖音上買過東西,抖音如今的變現(xiàn)能力也是不容小覷的…

                  2022年11月25日
                • 小紅書平臺的一些機制及玩法詳解(小紅書玩法有哪些)

                  關(guān)于小紅書 一:小紅書平臺的一些機制 1. 筆記內(nèi)容的CES評分機制 2. 筆記流量入口與長尾效應(yīng) 二:小紅書優(yōu)質(zhì)筆記的特點(分維度、類型分析) 1.筆記的本身架構(gòu)組成 維度 2.…

                  2022年11月25日
                • 百度關(guān)鍵詞快速排名的4大原理解析(百度怎么刷關(guān)鍵詞)

                  近期百度公告驚雷算法2.0,升級之快還是第一次吧,看來百度對于刷點擊行為是零容忍了。之前尹華峰SEO技術(shù)博客介紹過一篇如何使用刷點擊工具,其實市面上有很多這類SEO快速排名的軟件,…

                  2022年11月25日
                • 科比19歲女兒遭自稱與她生“科比式孩子”男子跟蹤騷擾

                  極目新聞記者王亮亮黃佳琪 據(jù)福克斯新聞網(wǎng)報道,當(dāng)?shù)貢r間11月21日,已故籃球巨星科比·布萊恩特的長女娜塔莉亞·布萊恩特21日向法院提交臨時限制令,聲稱這位32歲的前科從十幾歲起就騷…

                  2022年11月24日
                • 抖音世界杯投屏怎么弄 抖音看世界杯怎么看能投屏嗎

                  抖音作為短視頻平臺第一次進(jìn)軍世界杯直播,小編還是很期待的,畢竟每天沒事的時候都會刷一下抖音,看直播的話也是方便了不少,那抖音看世界杯可以投屏嗎?下面一起來了解一下。 抖音世界杯投屏…

                  2022年11月24日
                • 玩轉(zhuǎn)海外ASO優(yōu)化的8個技巧(蘋果aso優(yōu)化怎么做)

                  在海外,一款A(yù)PP要呈現(xiàn)到用戶眼前,基本上都繞不開iOS和Android渠道商。那么,如何讓你的App被更多用戶發(fā)現(xiàn)呢?本文作者總結(jié)了8個APP海外ASO優(yōu)化推廣策略,一起來看一下…

                  2022年11月24日

                聯(lián)系我們

                聯(lián)系郵箱:admin#wlmqw.com
                工作時間:周一至周五,10:30-18:30,節(jié)假日休息