随笔分类 - flask-web开发
摘要:编辑 form,继承添加的form 视图 @bp.route('/ubanners/', methods=['POST'])@login_required@permission_required(CMSPersmission.POSTER)def ubanners(): """ 修改banner "
阅读全文
摘要:后台逻辑 模型 from exts import dbfrom datetime import datetimeclass BannerModel(db.Model): __tablename__ = 'banner' id = db.Column(db.Integer, primary_key=T
阅读全文
摘要:视图 @bp.route('/banners/')@login_required@permission_required(CMSPersmission.POSTER)def banners(): return render_template('cms/cms_banners.html') 给这个ur
阅读全文
摘要:把base模板分为左右两块版心 .main-container{ /*整体版心*/ width: 990px; margin: 0 auto; overflow: hidden;}.lg-container{ /*左侧版心*/ width: 730px; float: left;}.sm-conta
阅读全文
摘要:模板抽离 由于前后台的模板有些需要的元素如,js,css是相同的,这里抽离出来做base模板 {% from "common/_macros.html" import static %}<meta name="csrf-token" content="{{ csrf_token() }}"><scr
阅读全文
摘要:配置文件中加入前台用户的身份标识 form class SigninForm(BaseForm): telephone = StringField(validators=[Regexp(r'1[345789]\d{9}', message='手机号不合法')]) password = StringF
阅读全文
摘要:将登录和注册需要的共性标签抽离出来做父模板 将css改名为base base模板 {% from 'common/_macros.html' import static %}<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <t
阅读全文
摘要:实现功能,访问测试页面的时候,跳转到注册页面,注册成功后跳转到测试页面 使用参数:若是从其他地址跳转过来时,头部信息中会携带参数referrer,此参数为从从哪个地址跳转到当前地址的,若是直接从浏览器输入的地址,则不会携带此参数 准备一个测试页面和接口 <!DOCTYPE html><html la
阅读全文
摘要:给提交按钮加一个id,方便写js js //发送ajax请求注册请求$(function () { $('#submit-btn').click(function (event) { event.preventDefault(); var telephone_input = $('input[nam
阅读全文
摘要:将两个验证码的视图都放到common蓝图下 from flask import Blueprint, request, make_responsefrom exts import alidayufrom utils import restfulfrom utils.captcha import Ca
阅读全文
摘要:前面的方法存在安全隐患,只要知道发送短信验证码的接口就可以无限触发发送短信验证码 改用post请求,在前端加scrf_token验证,后面需要使用到md5加密,引入md5 from apps.forms import BaseFormfrom wtforms import StringFieldfr
阅读全文
摘要:from flask import Blueprint, requestfrom exts import alidayufrom utils import restfulfrom utils.captcha import Captchabp = Blueprint("common", __name_
阅读全文
摘要:阿里大于短信平台:https://dysms.console.aliyun.com/dysms.htm#/overview 使用教程:https://blog.csdn.net/qq1031893936/article/details/81173878 控制台-->短信服务 进去后开通服务,点击添加
阅读全文
摘要:把验证码渲染到到页面上 访问,显然,是标签有个内边距 去掉内边距 加一个class 如果放大看的话,还有问题 用js实现点击更换图形验证码:生成查询字符串的形式访问图形验证码接口的url,放到img标签中,img标签检测到url改变会自动请求改变的url 处理url的js var param = {
阅读全文
摘要:安装Pillow库,用于生成图形验证码:pip install Pillow 字体文件来源 生成一个验证码图片 import randomimport stringfrom PIL import Image, ImageDraw, ImageFont# Image:一个画布# ImageDraw:一
阅读全文
摘要:html {% from 'common/_macros.html' import static %}<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>前台注册</title> <script src="http:
阅读全文
摘要:安装shortuuid用于前台用户的主键:pip install shortuuid 创建模型 from datetime import datetimeimport enumfrom werkzeug.security import generate_password_hash, check_pa
阅读全文
摘要:实现方式 使用装饰器的形式,将权限判断加在视图上 声明接口需要什么权限,用户访问接口的时候,判断用户是否有此权限 权限判断,接收权限 def permission_required(permission): def outter(func): @wraps(func) def inner(*args
阅读全文
摘要:增加所有剩余菜单的页面,并用视图渲染,方便后面调试权限控制 {% extends 'cms/cms_base.html' %}{% block title %}板块管理{% endblock %}{% block head %}{% endblock %}{% block page_title %}
阅读全文
摘要:给用户绑定为开发者 个人信息中渲染角色和权限 {% extends 'cms/cms_base.html' %}{% block title %} 个人信息{% endblock %}{% block page_title %} {{ self.title() }}{% endblock %}{%
阅读全文

浙公网安备 33010602011771号