• Python学习笔记_05:使用Flask+MySQL实现用户登陆注册以及增删查改操作


    前言:本文代码参考自两篇英文博客,具体来源点击文末代码链接中文档说明。 (PS:代码运行Python版本为2.7.14)


    运行效果:

    首页:

    注册页面:

    登陆界面:

    管理员登陆后界面:

     添加、删除、修改和查询员工所在部门信息界面(角色和员工界面类似):

    源码链接及说明:https://coding.net/u/LiuZhen1995/p/MyDemo/git/tree/ten/

    附学习过程中参考资料:

    1.config配置处理


    下面附加一篇博客,有关Flask登陆功能中使用Flask-Login库的具体讲解,通过这篇文章,能够加深自己对于Flask实现登陆功能的具体调用过程以及相关代码原理。

    文章中最后源码:

    # encoding: utf-8
    from flask import Flask, Blueprint
    from flask_login import (LoginManager, login_required, login_user,logout_user, UserMixin)
    
    app = Flask(__name__)
    
    
    # user models
    class User(UserMixin):
        def is_authenticated(self):
            return True
    
        def is_actice(self):
            return True
    
        def is_anonymous(self):
            return False
    
        def get_id(self):
            return "1"
    
    
    # flask-login
    app.secret_key = 's3cr3t'
    login_manager = LoginManager()
    login_manager.session_protection = 'strong'
    login_manager.login_view = 'auth.login'
    login_manager.init_app(app)
    
    
    @login_manager.user_loader
    def load_user(user_id):
        user = User()
        return user
    
    
    auth = Blueprint('auth', __name__)
    
    
    @auth.route('/login', methods=['GET', 'POST'])
    def login():
        user = User()
        login_user(user)
        return "login page"
    
    
    @auth.route('/logout', methods=['GET', 'POST'])
    @login_required
    def logout():
        logout_user()
        return "logout page"
    
    
    # test method
    @app.route('/test')
    @login_required
    def test():
        return "yes , you are allowed"
    
    
    app.register_blueprint(auth, url_prefix='/auth')
    app.run(debug=True)

    在浏览器中输入如下url,查看相关结果:

    http://localhost:5000/test
    http://localhost:5000/auth/login
    http://localhost:5000/auth/logout

    该文具体链接:Flask-Login 使用和进阶

  • 相关阅读:
    9.20 kali中的Metasploit生成木马控制windows 以及http协议相关
    9.19 接上一篇,jss
    9.18 DNS服务安装
    9.17 ubuntu安装LAMP服务
    线程的安全问题
    java实现多线程(上)
    异常处理
    抽象方法和接口、内部类
    面向对象的一些关键字和方法
    Object类和包装类的一些方法
  • 原文地址:https://www.cnblogs.com/liuzhen1995/p/7943576.html
Copyright © 2020-2023  润新知