Flask-cms 后台登录与注册(三)

本章节开始教你一步步实现功能开发。首先,我们从项目后台开始,创建后台蓝图。

后台蓝图

1、首先在 app 文件夹中创建 admin 文件夹(包),并在该文件夹中创建 views.py 文件。

admin/__init__.py 中:

from flask import Blueprint  # 引入 flask 自带的蓝图模块

admin_blue = Blueprint('admin_blue', __name__)  # 创建蓝图对象

from . import views  # 引入开发文件 views.py

admin/views.py 中:

from . import admin_blue  # 导入蓝图对象

# 注册后台首页路由
@admin_blue.route('/admin')
def index():
    return "这是后台首页"

app/__init__.py 中注册蓝图:

# 后台首页蓝图
from app.admin import admin_blue
app.register_blueprint(admin_blue)

重新运行项目,访问后台地址:http://127.0.0.1:5000/admin 你会看到:
在这里插入图片描述

2、引入对应后台模板及样式文件

static 文件夹下创建 admin 文件夹,把后台静态样式文件丢进去。
templates 文件夹下创建 admin 文件夹,再创建 index 文件夹,把后台首页静态文件丢到 index 文件夹中。
按照第二篇文章所学,修改对应路径的引用

3、在 admin/views.py 中:

from flask import render_template  # 引入加载模板包

@admin_blue.route('/admin')
def index():
    return render_template('admin/index/index.html')  # 加载后台首页模板

4、浏览器访问后台地址:http://127.0.0.1:5000/admin ,你会看到如下页面:

在这里插入图片描述

后台模板布局

此处步骤不详细说明,这里只简单讲一下布局文件夹,在 templates/admin 下创建 common 文件夹,用于存放公共静态模板。

templates/admin 文件夹下创建 app.html 文件,用于存放总布局文件,后台首页 index/index.html 继承布局文件即可。

详细语法格式,请参考源码或:https://clwy.cn/guide/documents/flask-clwy/1-0/templates-extends

代码提交:

git add .

git commit -m "后台蓝图和模板布局"

git push -u origin main

后台注册

由于登录后台需要账号和密码,所以我们先来实现后台注册功能,本次功能使用 ajax 来实现。

1、定义注册路由,在 admin/views.py 中:

# 后台注册
@admin_blue.route('/admin/user/register')
def register():
    return render_template('admin/user/register.html')

2、在 admin 文件夹下创建 user 文件夹,里面添加 register.html 模板文件,代码如下:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>cms后台注册</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="format-detection" content="telephone=no">
    <meta name="renderer" content="webkit">
    <meta http-equiv="Cache-Control" content="no-siteapp"/>
    <link rel="alternate icon" type="image/png" href="/static/admin/assets/i/favicon.png">
    <link rel="stylesheet" href="/static/admin/assets/css/amazeui.min.css"/>
    <style>
        .header {
    
            text-align: center;
        }

        .header h1 {
    
            font-size: 200%;
            color: #333;
            margin-top: 30px;
        }

        .header p {
    
            font-size: 14px;
        }
    </style>
</head>
<body>
<div class="header">
    <div class="am-g">
        <h1>cms后台管理系统</h1>
        <p>Integrated Development Environment<br/>专业细致,代码生成,界面设计,调试,编译</p>
    </div>
    <hr/>
</div>
<div class="am-g">
    <div class="am-u-lg-6 am-u-md-8 am-u-sm-centered">
        <h3>请填写以下信息注册新用户:</h3>
        <hr>

        <form method="post" action="" class="am-form">
            <label>用户名:</label>
            <input type="text" id="username" placeholder="请输入用户名">
            <br>
            <label>手机号:</label>
            <input type="text" id="mobile" placeholder="请输入手机号">
            <br/>
            <label>密码:</label>
            <input type="password" id="password" placeholder="请输入密码">
            <br>
            <label>确认密码:</label>
            <input type="password" id="check_password" placeholder="请再次输入密码">
            <br>
            <div class="am-cf">
                <input type="button" value="注 册" class="am-btn am-btn-primary am-btn-sm am-fl register">
            </div>
        </form>
        <hr>
        {% include "admin/common/_footer.html" %}
    </
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值