随笔分类 -  flask-web开发

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

上一页 1 2 3 4 5 6 ··· 8 下一页