一百二十二:CMS系统之页面抽离和登录页面
将登录和注册需要的共性标签抽离出来做父模板
将css改名为base

base模板

{% from 'common/_macros.html' import static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{% block title %}{% endblock %}</title>
<meta name="csrf-token" content="{{ csrf_token() }}">
<script src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
<link href="http://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<script src="http://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/blueimp-md5/2.11.0/js/md5.min.js"></script>
<script src="{{ static('common/param.js') }}"></script>
<script src="{{ static("common/ajax.js") }}"></script>
<link rel="stylesheet" href="{{ static("common/sweetalert/sweetalert.css") }}">
<script src="{{ static("common/sweetalert/sweetalert.min.js") }}"></script>
<script src="{{ static("common/sweetalert/xtalert.js") }}"></script>
<link href="{{ static('front/css/front_signbase.css') }}" rel="stylesheet">
{% block head %}{% endblock %}
</head>
<body>
<div class="outer-box">
<div class="logo-box">
<a href="/"><img src="{{ static('common/images/logo.png') }}" alt=""></a>
</div>
<h2 class="page-title">{% block h2_block %}{% endblock %}</h2>
<div class="sign-box">
{% block signbox %}{% endblock %}
</div>
<span style="display: none" id="referrer-span">{{ referrer }}</span>
</div>
</body>
</html>
注册页


{% extends 'front/front_sign_base.html' %}
{% from 'common/_macros.html' import static %}
{% block title %}
注册
{% endblock %}
{% block head %}
<script src="{{ static('front/js/front_singup.js') }}"></script>
{% endblock %}
{% block h2_block %}
账号注册
{% endblock %}
{% block signbox %}
<div class="form-group">
<div class="input-group">
<input type="text" class="form-control" name="telephone" placeholder="手机号码">
<span class="input-group-btn"><button id="sms-captcha-btn" class="btn btn-info">发送验证码</button></span>
</div>
</div>
<div class="form-group">
<input type="text" class="form-control" name="sms_captcha" placeholder="短信验证码">
</div>
<div class="form-group">
<input type="text" class="form-control" name="username" placeholder="用户名">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password1" placeholder="密码">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password2" placeholder="确认密码">
</div>
<div class="form-group">
<div class="input-group">
<input type="text" class="form-control" name="graph_captcha" placeholder="图形验证码">
<span class="input-group-addon captcha-addon"><img id="captcha-img" class="captcha-img" src="{{ url_for('common.graph_captcha') }}" alt=""></span>
</div>
</div>
<div class="form-group">
<button id="submit-btn" class="btn btn-warning btn-block">立即注册</button>
</div>
{% endblock %}
访问,没问题

登录页


{% extends 'front/front_sign_base.html' %}
{% from 'common/_macros.html' import static %}
{% block title %}
登录
{% endblock %}
{% block head %}
<script src="{{ static('front/js/front_singup.js') }}"></script>
{% endblock %}
{% block h2_block %}
账号登录
{% endblock %}
{% block signbox %}
<div class="form-group">
<input type="text" class="form-control" name="telephone" placeholder="手机号码">
</div>
<div class="form-group">
<input type="password" class="form-control" name="password" placeholder="密码">
</div>
<div class="checkbox">
<label><input type="checkbox" name="remember" value="1">记住我</label>
</div>
<div class="form-group">
<button id="submit-btn" class="btn btn-warning btn-block">立即登录</button>
</div>
<div class="form-group">
<a href="{{ url_for('front.signup') }}">点击注册</a>
<a href="#" style="float: right">找回密码</a>
</div>
{% endblock %}
视图

class SigninView(views.MethodView):
def get(self):
return render_template('front/front_signin.html') def post(self):
pass bp.add_url_rule('/signup/', view_func=SignupView.as_view('signup'))

一百二十二:CMS系统之页面抽离和登录页面的更多相关文章
- 一百二十:CMS系统之注册功能前后端逻辑
给提交按钮加一个id,方便写js js //发送ajax请求注册请求$(function () { $('#submit-btn').click(function (event) { event.pr ...
- 一百三十:CMS系统之七牛js和python的SDK使用示例
1.安装: pip install qiniu 2.编写获取uptoken的接口 @app.route('/uptoken/')def uptoken(): access_key = '' secre ...
- Bootstrap <基础二十二>超大屏幕(Jumbotron)
Bootstrap 支持的另一个特性,超大屏幕(Jumbotron).顾名思义该组件可以增加标题的大小,并为登陆页面内容添加更多的外边距(margin).使用超大屏幕(Jumbotron)的步骤如下: ...
- WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇]
原文:WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇] 在[上篇]中,我们分别站在消息交换和编程的角度介绍了SOAP Fault和FaultException异常.在服务执行过 ...
- VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池
VMware vSphere 服务器虚拟化之二十二桌面虚拟化之创建View Composer链接克隆的虚拟桌面池 在上一节我们创建了完整克隆的自动专有桌面池,在创建过程比较缓慢,这次我们将学习创建Vi ...
- 备忘录模式 Memento 快照模式 标记Token模式 行为型 设计模式(二十二)
备忘录模式 Memento 沿着脚印,走过你来时的路,回到原点. 苦海翻起爱恨 在世间难逃避命运 相亲竟不可接近 或我应该相信是缘份 一首<一生所爱>触动了多少 ...
- JAVA基础知识总结:一到二十二全部总结
>一: 一.软件开发的常识 1.什么是软件? 一系列按照特定顺序组织起来的计算机数据或者指令 常见的软件: 系统软件:Windows\Mac OS \Linux 应用软件:QQ,一系列的播放器( ...
- 微信小程序把玩(二十二)action-sheet组件
原文:微信小程序把玩(二十二)action-sheet组件 action-sheet组件是从底部弹出可选菜单项,估计也是借鉴IOS的设计添加的,action-sheet有两个子组件, action-s ...
- Alink漫谈(二十二) :源码分析之聚类评估
Alink漫谈(二十二) :源码分析之聚类评估 目录 Alink漫谈(二十二) :源码分析之聚类评估 0x00 摘要 0x01 背景概念 1.1 什么是聚类 1.2 聚类分析的方法 1.3 聚类评估 ...
随机推荐
- Python---virtualenv + Tensorflow + 安装jupyter notebook
一.ubuntu系统下安装完caffe后,安装 jupyter notebook. 在终端中执行,安装指令: sudo pip install jupyter 安装完成后运行 notebook : j ...
- Comparing Sentence Similarity Methods
Reference:Comparing Sentence Similarity Methods,知乎.
- Java&Selenium借助AutoIt 实现非Input类型自动化上传文件
通常情况下实现自动化上传文件,都是通过sendKeys函数直接将文件全路径传给页面空间就能完成,然而这种情况只能对Input类型的控件有效,对于非Input类型的控件可以借助AutoIt来完成 下载地 ...
- ftp上传文件和下载文件
public class FtpService { #region Fields and attributes private readonly int BufLen = 2048; /// < ...
- 基于Ajax技术的前后端Json数据交互方式实现
前言 使用浏览器访问网站是日常生活中必不可少的一件事情,当我们在浏览器地址栏中输入网址后会看到网站的内容,那么这个过程中发生了什么?下面简单介绍下浏览器访问网站过程. 第一步:浏览器向DNS服务器发起 ...
- ubuntu nginx 启动多个Django项目
1.将 /etc/nginx/sites-enabled/ 目录下的nginx默认配置文件default,重命名,例如:default1 2.给每个Django项目添加nginx.conf配置文件,建 ...
- 4、docker镜像:花卷结构、commit镜像
1.是什么 docker images 镜像是一种轻量级.可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码.运行时.库.环境变量和配置文件. ...
- HDU 6105 - Gameia | 2017 Multi-University Training Contest 6
/* HDU 6105 - Gameia [ 非平等博弈 ] | 2017 Multi-University Training Contest 6 题意: Bob 可以把一个点和周围所有点都染黑,还有 ...
- Mac OS 系统开发环境的一些坑
最近换 Mac OS 系统开发,运行项目时遇到各种报错,记录下: 1.拉取项目后,需要安装依赖 npm install ,提示需要安装 xcode,报错如下. 从官网下载 xcode 时提示要更新最新 ...
- ubuntu系统火狐无法播放网页视频
在ubuntu开发环境下,浏览firefox上网页视频时,无法播放视频. 需要安装flash插件 命令如下: 1. sudo apt-get update 2. sudo apt-get in ...