自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (3)
  • 收藏
  • 关注

原创 Python Flasky学习_使用Flask_SQLAlchemy的asPagination类对象实现分页

如果,某人的博客文章比较多,在一个页面上显示全部文章,耗时长、看起来也不方便。因此分页是比较好的选择。首先,我们在测试环境中使用Forgerypy创建一些虚拟数据。依赖文件如何写,参照点击打开链接# requirements/dev.txtForgerypy==0.1在User类和Post类中添加生成虚拟用户和文章的方法# app/models.pyclass User(Mixin,db.mo...

2018-07-15 09:16:29 935

原创 python程序依赖文件的创建与使用

一个python程序一般都要依赖于许多第三方包。如果拿到别人的python代码,里面有各种import,from * import。就需要去一个一个找这些包,再安装,而且你安装的包的版本号还与源码使用的版本号不一定相同,所以拿到这样的代码也不一定能用。因此,在写代码的时候,最好列出一个包含依赖文件的文本,告诉使用这个源码的人依赖的包是什么、包的版本是什么。一、简单的单独环境这里是指只涉及在一个环境...

2018-07-14 19:06:48 2148

原创 Python Flask学习_用户资料系统总结

几乎所有的社交博客都会给用户提供用户资料页,用来展示用户个人信息。用户资料页用户自己可以访问,也可以编辑。可以访问别人的用户资料页,但是不能编辑。管理员可以访问所有人的用户资料页,也都可以编辑。一、资料信息用户资料信息在后台应是存储与数据库中的users表中,因此,在User模型中添加一些字段。# app/models.pyclass User(UserMixin,db.Model): ...

2018-07-08 09:24:17 694

原创 Python Flask学习_用户角色和用户权限

在Web App中 ,存在和游客(匿名用户),普通用户,协管员,管理员等不同的角色,应当为不同的角色赋予不同的权限。各个用户只能在权限范围内访问页面、进行操作等。通过一个例子来说明。本例中的用户分为4中:游客、普通用户、协管员、管理员。不同的用户有着不同的权限。一、在数据库中表示不同的角色权限有这么几种:操作的权限使用8位二进制数表示,现在只用了5位,剩余的可以以后用来扩展。权限的叠加是按位与运算...

2018-07-04 23:36:06 13453 1

原创 Python Flask学习_确认账户(使用电子邮件)

总体思路:通过itsdangerous模块根据用户的id生成令牌,通过令牌生成特定URL(内含id信息),通过Email发送给注册用户。如果用户点击URL进来,证明用户信息真实,予以注册。否则反馈错误。# app/auth/views.py@auth.route('/register',methods=['GET','POST'])def register(): '''注册。数据库更...

2018-06-30 10:59:04 1665

原创 Python Flask学习_使用flask-login实现认证蓝本 (三)

这篇主要讲登入登出的实现。

2018-06-29 19:19:18 1174

转载 HTML杂记

一、常用标签 <a> 标签的 href 属性用于指定超链接目标的 URL。<div> 定义文档中的节。<ul> 定义无序列表。<p> 定义段落。<nav> 定义导航链接。<span> 定义文档中的节。<button> 定义按钮 (push button)。<li> 定义列表的项目。&am

2018-06-29 17:18:11 136

原创 Python Flask学习_使用flask-login实现认证蓝本(二)

在 

2018-06-29 17:05:50 698

原创 Python Flask学习_使用flask-login实现认证蓝本(一)

蓝本可以认为是一类路由的集合。一个Web App实现多个蓝本的目的是,把不同的路由分开,便于维护。再来复习一下,创建蓝本。1、在app包下创建新package,命名为auth。2、创建蓝本对象实例# app/auth/__init__.pyfrom flask import Blueprint                            #引入Blueprint类auth = Bl...

2018-06-29 10:51:51 2238 1

原创 Python Flask学习_使用Werkzeug

# models.pyfrom werkzeug.security import generate_password_hash,check_password_hashclass User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) ...

2018-06-28 00:15:45 423

原创 Python Flask学习_使用unittest进行单元测试

单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。

2018-06-27 23:19:05 1438

原创 Python Flask学习_使用Flask-Script

Flask开发的Web服务器支持很多启动设置选项,但是只能在脚本中作为参数传递给app.run()函数。每次想要不同的启动方式都需要改动源码,不是很方便。Flask-Script是一个Flask扩展,为Flask程序添加了一个命令解析器。Flask-Script自带了一组常用选项,而且还支持自定义命令。一、使用pip安装# pyCharm Terminalpip install flask-s...

2018-06-23 22:24:58 736

原创 Python Flask学习_使用Flask-Migrate实现数据库迁移

在开发过程中,有时需要 修改数据库模型,修改之后还需要更新数据库。使用SQLAlchmey更新数据库表,只能删除旧表,新建新表,数据也会丢失。因此,SQLAlchemy编写了一个迁移框架:Alembic,除了直接使用Alembic外。还可以使用Flask-Migrate集成到Flask-Scriot中,所有操作都通过Flask-Script命令完成。一、将MigrateCommand类添加到man...

2018-06-23 10:07:30 1413

原创 Python Flask学习_使用Flask-Mail集成到WebApp中

python标准库中内置了邮件支持模块smtplib,但是包装了smtplib的Flask-Mail能更好的和Flask程序集成。Flask-Mail连接到SMTP(简单邮件传输协议:simple mail transfer protocol)服务器,把邮件交给这个服务器发送。一、安装和相关配置参数# pyCharm Terminalpip install flask-mail二、在Pytho...

2018-06-21 18:36:19 950

转载 Python 杂记

1、python 中的比较:is 与 ==在 Python 中会用到对象之间比较,可以用 ==,也可以用 is 。但是它们的区别是什么呢?is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同。莱布尼茨说过:“世界上没有两片完全相同的叶子”,这个is正是这样的比较,比较是不是同一片叶子(即比较的id是否相同,这id类似于人的身份证标识)。== 比较的是两个对象的内容...

2018-06-19 12:39:51 185

原创 Python Flask学习_使用SQLAlchemy管理数据库

ORM是数据库映射模型,即把针对数据库的操作(增删改查等)抽象成了编程语言中代码的操作。例如:我想在数据库表User中增加一条记录,User_Class是User表在编程语言中的模型,我不需要去数据库中使用SQL命令,而是可以直接对User_Class进行操作,对数据库的操作交由User_Class自动完成,就像Qt中的QSqlTableModel这样的类。这就是数据库映射模型。SQLAlchem...

2018-06-19 12:34:18 728

原创 Python Flask学习_POST/重定向/GET模式

问题:刷新浏览器页面时,浏览器会重新发送之前发送的最后一个请求。如果这个请求是包含表单数据的POST请求,刷新页面后会再次提交表单。浏览器会发出警告:要求在再次提交前确认。因此,最好别让Web程序把POST请求作为浏览器发送的最后一个请求。解决方法是:使用重定向作为刷新产生的POST请求的响应。重定向响应是一种响应URL(而不是HTML代码)的特殊响应,浏览器收到相应的URL,会向重定向的URL发...

2018-06-18 21:27:19 2124

原创 Python Flask学习_使用Flask-wtf和web表单

HTML中的<form> 元素表示表单,表单用于收集用户输入。之前,学习使用request.form获取表单数据。但是有些任务重复单调,可以实现自动化管理,比如 :生成表单的HTML代码、验证提交的表单数据。Flask-wtf是flask的一个扩展,可以把重复工作变得更简单。一、安装flask-wtf和跨站请求伪造保护(CSRF)# pyCharm Terminal         ...

2018-06-18 10:52:30 5405

原创 Python Flask学习_使用Flask-Moment

为了解决时间本地化的问题,解决的方法是:服务器把时间发送给Web浏览器,浏览器将时间转化为本地时间,然后再渲染模板,进行显示。moment.js是使用JavaScript开发的优秀客户端开源代码库,它可以在浏览器中渲染日期和时间 。Flask-Moment是一个Flask程序扩展,能把moment.js集成到Jinja2模板中 。一、安装和初始化Flask-moment# pyCharm Te...

2018-06-18 09:15:17 1952 1

原创 廖雪峰python实战项目_Day1

#! app.pyimport logging;logging.basicConfig(level=logging.INFO)import asyncio, os, json, timefrom datetime import datetimefrom aiohttp import webdef index(request): ...

2018-06-17 23:06:56 1292

原创 Python Flask学习_使用静态文件及定义页面图标

一、静态文件HTML代码中引用的图片、JavaScript源码、CSS等都属于静态文件。Flask程序会在根目录下static目录中寻找静态文件 ,因此静态文件应当放于static目录中 。二、定义页面图标 这些都输入页面的图标。可以直接在templates/base.html中定义,其他html都是继承自base.html的,就可以不用重复代码。{% extends "bootstrap/bas...

2018-06-17 20:45:46 2369

原创 Python Flask学习_自定义错误界面

点击打开链接在之前学习过响应错误界面,使用的是abort函数。但是,Flask允许程序使用基于模板的自定义错误界面。

2018-06-17 20:17:53 559

原创 Python Flask学习_Jinja2模板的控制结构

{%        %}是Jinja2中的控制语句,{{     }}是Jinja2中的变量,{#       #}是注释。一、条件控制结构根据值,选择不同的语句执行 ,从而获得不同的响应字符串。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <tit

2018-06-17 10:27:49 517

原创 Python Flask学习_使用Jinja2模板响应请求

模板是一个 包含响应文本的文件,其中包含用占位符表示的动态部分。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>User</title></head>&lt

2018-06-16 23:55:16 1322

原创 Python Flask学习_初始化、路由、视图函数和响应

一、初始化(创建Flask程序实例)所有的Flask程序都必须创建一个程序实例。程序实例是Flask类的对象,经常使用以下的代码创建:from flask import Flaskapp = Flask(__name__)将构造函数的__name__参数传递给Flask程序,Flask用__name__决定程序的根目录。二、路由和视图访问网站时,客户端把请求发送给Web服务器,Web服务器在把请...

2018-06-16 10:36:53 1258

原创 廖雪峰教程之学习笔记_webapp实战项目_从协程到异步IO到aiohttp

来看看,如何从协程发展到异步IO又是如何使用的aiohttp框架的。、一、协程(coroutine)1、协程的功能:普通子程序调用总是一个入口,一个出口,调用顺序是固定的。def A(): print('1') print('2') print('3')普通子程序,肯定是执行“打印1、2、3”这样的顺序,中间不会中断。但是如果执行的是比较费事的操作,比如访问网络、向磁盘写入...

2018-06-11 23:32:20 397 1

原创 廖雪峰教程之学习笔记_webapp实战项目_aiohttp.web.Application()的使用

aiohttp模块的web.Application()方法是搭建WebApp的核心async def init(loop): await www.orm.create_pool(loop=loop, host='127.0.0.1', port=3306, user='root', password='password', db='awesome') app = web.Appli...

2018-06-11 21:44:29 5196 2

原创 廖雪峰教程之学习笔记_webapp实战项目_MySQL连接池

在廖雪峰的教程实战项目中,构建WebApp首先第一步就是编写ORM,ORM全称“Object Relational Mapping”,即对象-关系映射,就是把关系数据库的一行映射为一个对象,也就是一个类对应一个表,这样,写代码更简单,不用直接操作SQL语句。ORM就涉及到对数据库(在本例中是MySQL)的操作。首先,创建连接池,然后封装增删改查等操作。创建连接池的代码如下:async def cr...

2018-06-11 20:54:28 688

原创 python中coroutine和generator的异同

所谓的coroutine,也就是一个包含有yield关键字的函数,但是跟Generator不同的是,coroutine会以value = yield from ...或者 value = await ...的方式使用yield关键字,并且接受调用者通过send(value)函数发送过来的数据,然后消费这个数据(consume the value)。在使用coroutine,有一点很需要注意的就是:...

2018-06-11 20:36:05 696

原创 廖雪峰教程之学习笔记_webapp实战项目_import的使用

在实战webapp项目中,发现之前学习速度可能有些过快,很多知识又忘记了。所以,带着复习python的基础知识,力争一点一点吃透。一、模块1、在python中一个.py文件就是一个模块(Module)一个模块编写完毕,就可以被其他地方引用,不用从头编写。相同名字的函数和变量可以分别存在于不同的模块中。2、比模块更高一级的组织是包(package)mycompany├─ __init__.py├...

2018-06-11 19:27:24 823 1

原创 廖雪峰教程之学习笔记_webapp实战项目_自定义web框架

在廖雪峰教程的实战项目第五天的学习中,看到了这样的代码:“要把一个函数映射为一个URL处理函数,我们先定义@get():”def get(path): ''' Define decorator @get('/path') ''' def decorator(func): @functools.wraps(func) def wrapp...

2018-06-10 09:49:22 323

原创 廖雪峰教程之学习笔记_webapp实战项目_MySQL使用问题

Mysql版本:5.6.39     密码:password1、 命令行启动的方法:win+r->cmd->输入”net start mysql” ->输入”mysql –u root–p”  ->”password”2、 在pycharm的Terminal中,F:\PyProject>mysql -u root -p < sql\schema.sql。F:\P...

2018-06-10 00:11:07 427

原创 python中各种下划线的含义

_ _xxx :      在C++的类中,有公有、私有、保护的权限之分,但是在py中,语法上没有这样的关键字。但是,有方法可以实现类似的功能。在类的属性(变量)名前加两个下划线。比如self._ _ name,这就是实例的私有属性,在实例外部不能访问。_ _ XXX_ _: 在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,可以从外部...

2018-06-09 22:52:30 1532

原创 pycharm中Structure(结构化)中的字母标识含义

在pycharm中是自动补全的变量的类别  p:parameter 参数  m:method 方法  c:class 类  其他的也类似,大同小异  v:variable 变量  f:function 函数  另外,字母左上角有锁的图样子的,表示权限为私有。一般不应改动。左上角圆圈的含义暂时不明:...

2018-06-09 21:18:13 4036 1

原创 廖雪峰教程之学习笔记_webapp_pycharm的import问题

__author__ = 'Michael Liao'import time, uuidfrom orm import Model, StringField, BooleanField, FloatField, TextField

2018-06-09 20:56:53 505

Qt使用udp协议示例,简单易懂

Qt使用udp协议示例,简单易懂:核心类QUdpSocket.实现简单的广播通信

2018-05-04

Qt实现简单的C/S架构

用Qt5.8实现的简单的C/S架构,实现服务器与客户端的网络通信,用到的核心类有:QTcpServer,QTcpSocket

2018-05-04

Qt实现的单机版学生信息管理系统,支持录入删除学生信息和成绩

使用Qt5.8实现的学生信息管理系统,支持学生、教师、班级及学生成绩的表格化管理,对表格支持增加、删除、更改等操作,同时支持及时将所选成绩转化为可视化图表,直观。

2018-04-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除