django项目实现中文检索
在settings.py中设置
EMAIL_USE_SSL = True
EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.com
EMAIL_PORT = 465
EMAIL_HOST_USER = '763005825@qq.com'# 帐号
EMAIL_HOST_PASSWORD = 'jffbcdknmbzvbega' # 密码
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
引入包
from django.core.mail import send_mail
发送邮件
send_mail('主题',"内容",'发送账号',['接收账号'],fail_silently=False)
selery发送邮件
celery
· 官方网站
· 中文文档
· 示例一:用户发起request,并等待response返回。在本些views中,可能需要执行一段耗时的程序,那么用户就会等待很长时间,造成不好的用户体验
· 示例二:网站每小时需要同步一次天气预报信息,但是http是请求触发的,难道要一小时请求一次吗?
· 使用celery后,情况就不一样了
· 示例一的解决:将耗时的程序放到celery中执行
· 示例二的解决:使用celery定时执行
名词
· 任务task:就是一个Python函数
· 队列queue:将需要执行的任务加入到队列中
· 工人worker:在一个新进程中,负责执行队列中的任务
· 代理人broker:负责调度,在布置环境中使用redis
使用
· 安装包
celery==3.1.25
celery-with-redis==3.0
django-celery==3.1.17
· 配置settings
INSTALLED_APPS = (
...
'djcelery',
}
...
import djcelery
djcelery.setup_loader()
BROKER_URL = 'redis://127.0.0.1:6379/0'
CELERY_IMPORTS = ('应用名称.task')
· 在应用目录下创建task.py文件
from celery import task
from django.core.mail import send_mail
import time
@task
def sendmail():
email='763005825@qq.com'
send_mail('reigster',"欢迎登录天天生鲜",'763005825@qq.com',[email],fail_silently=False)
time.sleep(10)
· 迁移,生成celery需要的数据表
python manage.py migrate
· 启动Redis
sudo redis-server /etc/redis/redis.conf
· 启动worker
python manage.py celery worker --loglevel=info
· 使用代码
#from task import *
def index(request):
sendmail.delay()
return HttpResponse("hello world")
在settings.py中设置
EMAIL_USE_SSL = True
EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.com
EMAIL_PORT = 465
EMAIL_HOST_USER = '763005825@qq.com'# 帐号
EMAIL_HOST_PASSWORD = 'jffbcdknmbzvbega' # 密码
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
引入包
from django.core.mail import send_mail
发送邮件
send_mail('主题',"内容",'发送账号',['接收账号'],fail_silently=False)
selery发送邮件
celery
· 官方网站
· 中文文档
· 示例一:用户发起request,并等待response返回。在本些views中,可能需要执行一段耗时的程序,那么用户就会等待很长时间,造成不好的用户体验
· 示例二:网站每小时需要同步一次天气预报信息,但是http是请求触发的,难道要一小时请求一次吗?
· 使用celery后,情况就不一样了
· 示例一的解决:将耗时的程序放到celery中执行
· 示例二的解决:使用celery定时执行
名词
· 任务task:就是一个Python函数
· 队列queue:将需要执行的任务加入到队列中
· 工人worker:在一个新进程中,负责执行队列中的任务
· 代理人broker:负责调度,在布置环境中使用redis
使用
· 安装包
celery==3.1.25
celery-with-redis==3.0
django-celery==3.1.17
· 配置settings
INSTALLED_APPS = (
...
'djcelery',
}
...
import djcelery
djcelery.setup_loader()
BROKER_URL = 'redis://127.0.0.1:6379/0'
CELERY_IMPORTS = ('应用名称.task')
· 在应用目录下创建task.py文件
from celery import task
from django.core.mail import send_mail
import time
@task
def sendmail():
email='763005825@qq.com'
send_mail('reigster',"欢迎登录天天生鲜",'763005825@qq.com',[email],fail_silently=False)
time.sleep(10)
· 迁移,生成celery需要的数据表
python manage.py migrate
· 启动Redis
sudo redis-server /etc/redis/redis.conf
· 启动worker
python manage.py celery worker --loglevel=info
· 使用代码
#from task import *
def index(request):
sendmail.delay()
return HttpResponse("hello world")
django项目实现中文检索的更多相关文章
- CentOS 7下使用Apache2部署Django项目,解决文件名中含有中文报错的问题
系统版本: CentOS 7.3Apache 2.4 Django 1.11 问题描述 Django项目涉及上传操作,上传文件名称含有中文,若使用runserver启动服务,没有问题!若将Django ...
- Django REST framework 中文教程1:序列化
建立环境 在我们做任何事情之前,我们将使用virtualenv创建一个新的虚拟环境.这将确保我们的包配置与我们正在开展的任何其他项目保持良好的隔离. virtualenv envsource env/ ...
- Django项目实践4 - Django网站管理(后台管理员)
http://blog.csdn.net/pipisorry/article/details/45079751 上篇:Django项目实践3 - Django模型 Introduction 对于某一类 ...
- Django项目实践4 - Django站点管理(后台管理员)
http://blog.csdn.net/pipisorry/article/details/45079751 上篇:Django项目实践3 - Django模型 Introduction 对于某一类 ...
- docker 运行Django项目
一.概述 已经写好了一个Django项目,需要将这个项目用docker封装一个镜像,使用k8s发布! 在封装并运行的过程中,发现了很多问题,这里会一一介绍! 二.时区问题 采用的是镜像是 ubuntu ...
- Mybatis使用MySQL模糊查询时输入中文检索不到结果怎么办--转自http://www.jb51.net/article/88236.htm
这篇文章主要介绍了Mybatis使用MySQL模糊查询时输入中文检索不到结果的解决办法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 项目开发中,在做Mybatis动态查询时,遇到了 ...
- CentOS7下部署Django项目详细操作步骤
严格按下面步骤 一.更新系统软件包 yum update -y 二.安装软件管理包和可能使用的依赖 yum -y groupinstall "Development tools" ...
- Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查
一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...
- django项目创建启动 ORM操作
. HTTP协议消息的格式: . 请求(request) 请求方法 路径 HTTP/1.1\r\n k1:v1\r\n ...\r\n \r\n 请求体 <-- 可以有,可以没有 . 响应(re ...
随机推荐
- vue.js sha256加密
sha256: 1.使用cnpm安装 :cnpm install js-sha256 2.然后在组件中methods定义方法,在调用 let sha256 = require("js-sha ...
- windows下搭建nginx+php+laravel开发环境(转)
1.前言 windows下大多我们都是下载使用集成环境,但是本地已经存在一个集成环境,但不适合项目的需求.因此准备再自己搭建一个环境. 2.准备 工具: 1) 下载 nginx1.14.0(版本根据自 ...
- React-propsType和defaultProps
TodoItem.propTypes={ content:PropTypes.string, text:PropTypes.string.isRequired, handleDeleteItem:Pr ...
- 容器中的JVM资源该如何被安全的限制?
前言 Java与Docker的结合,虽然更好的解决了application的封装问题.但也存在着不兼容,比如Java并不能自动的发现Docker设置的内存限制,CPU限制. 这将导致JVM不能稳定服务 ...
- 1 Introduction
1. Introduction 1.1. License Flowable is distributed under the Apache V2 license. 1.2. Download http ...
- Math的一些方法
Math.abs(数值) 把()内的值变为正数 Math.ceil(4.3) 向上取整 // 5 Math.floor(4.3) 向下取整 // 4 Math.round(4.3) 四舍五入取整 // ...
- Codeforces Round #546 (Div. 2)-D - Nastya Is Buying Lunch
这道题,神仙贪心题... 题意就是我给出数的顺序,并给出多个交换,每个只能用于相邻交换,问最后一个元素,最多能往前交换多少步. 我们考虑这样一个问题,如果一个这数和a[n]发生交换,那么这个数作为后面 ...
- 软工+C(1): 题目设计、点评和评分
// 下一篇:分数和checklist 如何设计题目 教学中的一个问题是老师出题太简单了,题目设计一开始上来就不紧凑,我认为一个好的课程应该上来就给你紧凑感,而不是先上来"轻松2-3周&qu ...
- java list map set array 转换
1.list转set Set set = new HashSet(new ArrayList()); 2.set转list List list = new ArrayList(new HashSet( ...
- Shell命令-文件及目录操作之cp、find
文件及目录操作 - cp.find 1.cp:复制文件或目录 cp命令的功能说明 cp命令用于复制文件或目录. cp命令的语法格式 cp [OPTION]... SOURCE... DIRECTORY ...