django开发-django和tornado的不同

2019-02-22
阅读 12 分钟
4.2k
python中常用的几个web框架有django, tornado, flask等,今天来总结一下django和tornado的不同。工作中django和tornado都用过,使用django相对更多一些。个人感觉django虽然好用,有搭建项目快、自带ORM、自动生成路由、自带管理后台等优势;但若实际工作中选择,我还是会偏向于使用tornado框架,因为torndo使用更加灵活...

python开发-常见面试题

2018-12-01
阅读 2 分钟
2.1k
1.is与==的区别is比较变量内存地址和值是否相等,==仅仅比较变量的值是否相等需要注意:当变量的值较小时(a=1, b=1时,a is b的值是True,这是由于python定义变量时底层的实现 决定的,例如小整数对象池)两个变量的id值就会相同,导致is的值为True。

django开发-使用celery搭建分布式(多节点)任务队列

2018-12-01
阅读 4 分钟
8k
今天介绍一下如何在django项目中使用celery搭建一个有两个节点的任务队列(一个主节点一个子节点;主节点发布任务,子节点收到任务并执行。搭建3个或者以上的节点就类似了),使用到了celery,rabbitmq。这里不会单独介绍celery和rabbitmq中的知识了。

django开发-mongodb的配置与使用

2018-12-01
阅读 5 分钟
9.6k
今天整理了一下在django项目中如何使用mongodb, 环境如下:ubuntu18.04, django2.0.5, drf3.9, mongoengine0.16

django开发-在Docker中部署django项目

2018-11-16
阅读 3 分钟
11.8k
今天整理了一下如何在docker中部署django项目。 1.环境如下: {代码...} 2.项目结构如下: 由于仅仅是测试,项目比较简单,复杂的项目也是这个流程。 通过上面的结构,我们需要编写的文件包括 {代码...} 3.blog/Dockerfile(基础镜像使用的是python:3.6,而不是ubuntu、centos。如果是ubuntu、cenos,Dockerfile文件中需...

python开发-实现RabbitMQ的消息队列

2018-11-07
阅读 5 分钟
8k
最近在研究redis做消息队列时,顺便看了一下RabbitMQ做消息队列的实现。以下是总结的RabbitMQ中三种exchange模式的实现,分别是fanout, direct和topic。

python开发-实现redis中的发布订阅功能

2018-11-04
阅读 3 分钟
14.3k
redis中的发布/订阅模型是一种消息通信模式,今天聊一下在python中实现简单的发布订阅功能。 实现方式一: redis_helper.py: 封装发布订阅方法 {代码...} redis_pub.py: 发布者 {代码...} redis_sub.py: 订阅者 {代码...} 实现方式二: redis_helper.py: 封装发布订阅方法 {代码...} redis_pub.py: {代码...} redis_sub.py...

python中多个装饰器的执行顺序

2018-10-07
阅读 1 分钟
1.9k
今天讲一下python中装饰器的执行顺序,以两个装饰器为例。 装饰器代码如下: {代码...} 执行结果如下: {代码...} 执行顺序以图片形式展示如下: 先进入离test函数最近的装饰器,由于装饰器中返回的是函数的函数名引用,并非真正调用函数,所以先打印: {代码...} 到inner2后,func会真正执行函数,会调用inner1(),所以再打...

在nginx中配置https

2018-09-29
阅读 2 分钟
6.2k
1.首先需要申请ssl证书。 在阿里云,腾讯云,华为云等云服务提供商的网站一般都会有免费ssl证书,申请一个即可;下面以华为云为例;2.下载证书,会得到server.key和server.crt两个文件;在与nginx.conf同目录下创建ssl文件夹(名字任意), 把这两个证书放入刚创建的文件夹中;3.在nginx.conf的server中增加如下配置:

django开发-定时任务的使用

2018-09-25
阅读 3 分钟
14.9k
今天介绍在django中使用定时任务的两种方式。 方式一: APScheduler1)安装: {代码...} 2)使用: {代码...} 3)启动定时任务 {代码...} 方式二: django-crontab1) 安装: {代码...} 2) 添加配置到INSTALL_APPS中INSTALLED_APPS = ( {代码...} )3) 编写定时函数: {代码...} {代码...} 4)编写定时命令Django为项目中每一个应用...

ubuntu18.04上搭建django项目测试环境

2018-09-24
阅读 2 分钟
3.7k
今天来聊一下django项目测试环境的搭建,看下面的具体步骤。 以下环境在ubuntu18.04下搭建,步骤如下: 1.安装数据库mysql5.7:1)安装 {代码...} 设置root用户的密码: {代码...} 2.安装redis: {代码...} 3.安装git: {代码...} 生成公钥:执行ssh-keygen后,会将公钥和私钥保存在当前用户目录下的.ssh文件夹中,id_rsa.pub...

关于阿里云短信发送的一个问题

2018-09-23
阅读 1 分钟
5.1k
使用阿里云的短信服务时, 需要下载sdk, 现有以下两个版本的sdk: {代码...} 在python3.6中使用短信服务的以下代码时: {代码...} 如果使用的sdk版本是2.9.1,会出现以下错误: {代码...} 将sdk版本换成2.8.6就可以了,因为2.9.1的sdk包中已经没有add_endpoint这个属性了。 还有一点需要注意,短信服务的开发指南 ([链接]) ...

百度语音合成在python中的使用

2018-09-23
阅读 2 分钟
4.9k
今天来说一下在python中如何使用百度的语音合成功能;即输入一段文字,请求百度相关服务器后,会返回来一段二进制语音流,将这段二进制数据经过base64编码返回给前端,前端解码后,可以播放出这段语音;也可以将这段二进制语音流保存到一个wav文件中。

django开发-聚合函数的使用

2018-09-23
阅读 4 分钟
5.8k
在django开发中,获取一些统计数据时,需要用到model中的聚合函数;下面就聊一下django中跟统计、聚合有关的方法。 1.aggregate: 对QuerySet进行汇总后得到的数据1)求所有订单的平均消费: {代码...} 给结果指定别名:{'hehe': 12.00} {代码...} 2)求订单的最大消费,和平均消费 {代码...} 3)统计某菜品在所有评价中的点赞...

django开发-log日志的配置

2018-09-23
阅读 4 分钟
9.1k
在生产环境中,将程序的运行日志输出保存到文件中是很必要的操作;当应用崩溃时,很容易通过查找日志来定位问题。下面介绍一下django开发中如何将日志输出到文件中。

微信公众号开发中的支付流程

2018-09-09
阅读 4 分钟
3.9k
微型公众号开发有以下几个步骤:1.获取全局access_token2.获取网页授权的access_token和refresh_token3.获取网页授权的签名(前端用于获取调用JSSDK的权限)4.公众号支付-调用统一下单接口获取prepay_id5.公众号支付-将签名返回给前端用于请求微信公众号支付

ubuntu18.04中为django项目搭建nginx+gunicorn环境

2018-09-02
阅读 2 分钟
2.6k
具体步骤如下:1.安装gunicorn: pip install gunicorn2.使用gunicorn启动django项目: gunicorn 项目名称.wsgi:application –bind 127.0.0.1:80003.安装并配置nginx:编译安装时,在安装nginx前,需要先安装其他几个软件包,具体安装如下:1)安装openssl:

django开发之model篇-Field类型讲解

2018-08-26
阅读 3 分钟
5.4k
先说说常用的字段类型:1) AutoField: 自增字段类型,当自定义自增类型的id时,可以使用此类型;2) BigAutoField: 64位的整数自增类型;3) BigIntegerField: 64位的整数类类型;4) BinrayField: 字节类型的二进制数据;5) BooleanField: 布尔类型;6) CharField: 字符串类型,使用时必须指定max_lenth这个参数;7) DateFie...

基于asyncio、aiohttp、xpath的异步爬虫

2018-08-17
阅读 7 分钟
4.4k
该爬虫实现了以下功能:1.读取csv文件中的爬取规则,根据规则爬取数据;代码中添加了对3个网站的不同提取规则,如有需要,还可以继续添加;2.将爬取到的数据保存到mysql数据库中。

在tornado中使用tcpserver和tcpclient实现echo服务器

2018-08-12
阅读 5 分钟
5.4k
本文主要介绍了在tornado框架中,使用tcpserver,tcpclient,struct.pack(),struct.unpack实现简单echo服务器的过程。

在django开发中,使用drf序列化好友列表

2018-08-12
阅读 5 分钟
2.6k
上面的序列化主要使用了serializers.ImageField 和 serializers.SerializerMethodField,如有错误之处,欢迎交流指正!