Django
Django
FatPuffer
这个作者很懒,什么都没留下…
展开
-
django集成ldap
ldap搭建过程一:安装django-ldap依赖包pip3 install django-python3-ldap二:在settings中进行添加INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', '原创 2021-11-23 00:29:25 · 953 阅读 · 0 评论 -
supervisor-monitor监控
1. 监控的作用1. supervisor可以通过配置[inet_http_server]开启web界面管理,为什么还要使用supervisor-monitor2. supervisor-monitor是通过RPC远程调用进行管理多台服务器上的supervisor服务进程的,如果不使用它,假如一个公司有多个服务器,每个上面都部署了supervisor服务,那么管理起来就很不方便,每次需要逐个登录所有的supervisor服务去进行管理,而如果使用了supervisor-monitor,通过简单配置就能原创 2020-09-16 18:31:56 · 1596 阅读 · 0 评论 -
supervisor分组
1.首先说说为什么要使用分组需求:假如公司目前有一台配置很高的服务器用来部署项目,项目为了方便管理,使用supervisor进程管理工具,目前该服务器上面已经部署了一个项目。此时研发团队又开发了一个项目,需要部署上线,由于该服务器性能很好,老板想要节约成本,预将这个项目也部署在该服务器上,同样使用supervisor进行管理,那么此时就会出现一下情况:如果仅有一个项目时,启动、停止、重启项目只需要使用以下命令supervisorctl start allsupervisorctl restart原创 2020-09-16 16:53:55 · 2377 阅读 · 1 评论 -
Django + vue + nginx 部署(方案一)
前言:此方法是用于前后端分离python-web项目,前端写完项目vue直接将打包好的(dist)交给后台1. 后台框架主体首先看看未启用前端项目时访问根目录的界面这个就是后台自己的api接口界面(方便接口测试)2. 前台disk包结构3. 在django项目中新建文件夹(一般命名为frontend)用来存放前台代码,然后将代码disk内的两个文件以及一个static文件夹拷...原创 2020-04-24 11:18:50 · 5457 阅读 · 0 评论 -
django + mysql8.0报错解决
错误如下:raise RuntimeError("cryptography is required for sha256_password or caching_sha2_password")RuntimeError: cryptography is required for sha256_password or caching_sha2_password解决办法:1.登录数据库mys...原创 2019-02-06 13:18:31 · 1045 阅读 · 0 评论 -
django连接远程数据库配置
settings文件:DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '库名', 'USER': 'root', 'PASSWORD': '密码', 'PORT': 3306, 'HOST': '...原创 2019-02-06 13:12:08 · 1373 阅读 · 0 评论 -
nginx + vue + django(uwsgi + channels) + supervisor 部署(方案二)
1.环境信息服务器为centos72.安装supervisoryum install supervisor友情提示:如果安装失败,直接更换镜像源,别看网上那些没用的(我太难了)3.更换镜像源如果你上一步安装没有问题,那就跳过该步骤1.进入到yum的源目录下cd /etc/yum.repos.d/2.将原来的CentOS-Base.repo进行备份mv CentOS...原创 2020-04-08 15:05:23 · 815 阅读 · 0 评论 -
django根据数据库生成模型类
1. settings.py配置数据库信息DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # To negate the effect of atomic request, # use @transaction.non_atomic_requests on v...原创 2020-03-25 14:51:47 · 590 阅读 · 2 评论 -
django执行migrate命令报错解决办法
1.迁移命令1. makemigrations:将模型生成迁移脚本app_label:可选,指定单个app进行脚本迁移--name:可选,给迁移脚本重命名--empty:可选,生成空的迁移脚本,然后自己写迁移脚本2. migrate:将生成的迁移脚本转换成对应SQL语句并执行,生成数据库数据,并将改迁移文件名称记录在数据库中app_label:可选,将单个app下的迁移文件进行数...原创 2020-03-25 14:03:24 · 3679 阅读 · 0 评论 -
抓取自己Django服务的数据
import jsonimport requestsclass TestCase: def __init__(self): self.prefix = 'http://10.10.8.179:8888' self.token = requests.get(self.prefix + '/base/get_token').cookies.get('cs...原创 2020-03-11 18:14:17 · 157 阅读 · 0 评论 -
Django缓存
CACHES = { # memcached缓存 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': [ '172.19.26.240:11211', '172.19.26.24...原创 2019-12-21 15:11:41 · 113 阅读 · 0 评论 -
Django 优秀资源集
管理界面djamin Django管理界面的一种新样式django-admin-bootrastrap Django 管理界面的自适应皮肤django-simpleui 使用vue重构的django-admin站点django-admin-easy 一个关于管理界面数据项和装饰器的集合django-admin-interface 终级管理界面,它基于现代扁平式风格,能让你通过管理界面自...原创 2019-12-06 18:38:10 · 1398 阅读 · 0 评论 -
django动态添加定时任务
>>> from django_celery_beat.models import PeriodicTask, IntervalSchedule# 添加定时间隔周期#IntervalSchedule.DAYS#IntervalSchedule.HOURS#IntervalSchedule.MINUTES#IntervalSchedule.SECONDS#Interv...原创 2019-11-14 19:45:05 · 2432 阅读 · 0 评论 -
Celery任务失败重试
from celery.decorators import task@task()def add(x, y, **kwargs): if not x or not y: try: raise Exception("test error") except Exception, e: add.retry(ar...原创 2019-11-14 17:29:58 · 685 阅读 · 3 评论 -
Django模板语法
一、形式:小写: {{ name | lower }}二、串联:先转义文本到HTML,再转换每行到 <p> 标签: {{ my_text|escape|linebreaks }}三、过滤器的参数显示前30个字:{{ bio | truncatewords:"30" }}格式化:{{ pub_date | date:"F j, Y" }}过滤器列表:{{ 123|add:"5...原创 2019-11-13 10:44:55 · 382 阅读 · 0 评论 -
django日志
前言 Django对于日志输出的信息是很完善的,request的信息,setting配置,trackback的信息,一应俱全,足够我们调试了。但是在线上环境,如果让用户看到这些信息,是很不安全的(暴露代码)。所以在线上我们要关闭Debug,但是又不能扔掉这些调试信息,这就要用到logging...原创 2019-10-16 16:03:21 · 246 阅读 · 0 评论 -
django从外部读取配置文件
import osfrom configparser import ConfigParser# 异常处理from django.core.exceptions import ImproperlyConfigured# 获取项目根目录 <此处根据自己项目获取>BASE_DIR = os.path.dirname(os.path.dirname( os.path.di...原创 2019-10-16 15:10:20 · 2220 阅读 · 0 评论 -
django自定义path路由转换器
需求:路由中传递参数格式python+django,转换到视图函数中的时候需要变为['python', 'django']在使用reverse进行路由反转时,需要传递参数['python', 'django'],此时需要将其变为python+django实现方式:自定义路由转换器第一步:在应用下新建converters.py文件,在该文件内进行自定义路由转换器from djan...原创 2019-09-05 22:01:45 · 577 阅读 · 0 评论 -
Django中间件
位置:推荐在需要用到中间件的应用下创建middleware.py文件,将中间件定义在该文件内定义1. 函数式:def judge_login_middleware(get_response): # 执行初始化的代码块 def middleware(request): print('request-view之间的代码块') user_id = request.session....原创 2019-09-16 15:30:49 · 84 阅读 · 0 评论 -
Django自定义查询集
from django.db import modelsclass PublisherQuerySet(models.query.QuerySet): def get_book_num(self): """获取出版书籍总数量""" return self.book.all().annotate(publisher_num=Count('book')) ...原创 2019-09-23 15:51:32 · 378 阅读 · 0 评论 -
Django将秒转换为xx天xx时xx分
from django.utils.translation import ngettext_lazy as _ndef humanize_seconds(secs): a_day = 86400 an_hour = 3600 a_minute = 60 timetot = '' total_secs = secs if secs > a_d...原创 2019-09-24 16:36:36 · 200 阅读 · 0 评论 -
supervisor在python3中的使用
本篇文章请结合以下项目学习:点击查看项目目录树:django_celery├── conf # 存放supervisor相关配置文件│ ├── supervisord.conf│ ├── supervisor_celery_worker.ini # python3 manage.py celery worker -l info│ ├── supervisor_cele...原创 2019-02-17 14:19:16 · 6842 阅读 · 0 评论 -
Django 在异常捕获中进行数据库保存,保存后将异常再抛出
需求:当我检查配额时,如果配额不足,我需要将订单状态改为5,然后再将原有异常抛出一:最初做法try: self.check_quota_enough(create_form) # 检查配额except Exception as e: self.object.state = 5 self.object.save() raise e存在问题:djan...原创 2019-08-14 17:48:14 · 1728 阅读 · 1 评论 -
Django通用视图
1.通用视图基类generic/base.pyclass View: # 请求反射,对应到视图处理类定义的处理方法 http_method_names = ['get', 'post', 'put', 'patch', 'delete', 'head', 'options', 'trace'] def __init__(self, **kwargs # **k...原创 2019-07-19 18:32:06 · 541 阅读 · 0 评论 -
redis存储购物车记录分析
1.什么时候添加购物车记录 当用户浏览商品详情时添加购物车记录detail.html <div class="goods_detail_con clearfix"> <div class="goods_detail_pic fl"><img src="{{ sku.image....原创 2019-03-24 19:46:01 · 1321 阅读 · 0 评论 -
电商平台订单并发处理逻辑
订单并发问题说明使用悲观锁解决订单并发:使用乐观锁解决订单并发: 修改mysql隔离级别原创 2019-03-24 18:49:44 · 2326 阅读 · 0 评论 -
全文检索框架:haystack在Django中的使用
全文检索框架:haystack全文搜索引擎:whoosh,solr,Xapian,Elasticsearch中文分词包:jieba第一步:安装hsystack,首先进入你的虚拟环境,如果未使用虚拟环境则可忽略,直接安装。workon 虚拟环境名pip3 insatll django-haystack第二步:安装全文搜索引擎whoosh,他是用纯Python写的pip3 instal...原创 2019-10-30 16:19:16 · 576 阅读 · 0 评论 -
web开发中首页静态化处理
首先为什么我们要将页面静态化呢?首先我们来讲讲页面静态化的优点:1:加快网站的运行速度,提升客户体验2:减少对后端服务器的压力其次我们再来讲讲页面静态化处理的一些要求?跟客户信息相关的内容,不要包含在静态化内容里面经常变化的内容,最好不要包含在静态内容里面更新频率过高的内容,不适合静态化最后我们讲讲为何选择首页来进行页面静态化处理?第一,由于首页展示信息变化频率比较低...原创 2019-03-02 23:44:26 · 1760 阅读 · 0 评论 -
Django框架中使用Celery异步发送邮件
(1)邮箱设置(2)在新页面中点击“客户端授权密码”,勾选“开启”,弹出新窗口填写手机验证码。(3)填写授权码(授权码不能和登录密码一致)(4)提示开启成功(5)打开Django项目settings.py文件,配置如下EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'# 163邮箱smtp服务器地址EMA...原创 2019-02-26 14:16:48 · 1314 阅读 · 0 评论 -
Django项目中使用celery分布式任务方法
项目框架目录树:django_celery|├── course # 新建应用│ ├── admin.py│ ├── __init__.py│ ├── migrations│ ├── models.py│ ├── tasks.py # 任务模块│ ├── urls.py # 路由文件│ └── views.py├── db.sqlite3├...原创 2019-02-16 18:52:26 · 1092 阅读 · 0 评论 -
Celery定时任务
目录树celery_app | |-- __init__.py # celery应用文件 | |-- celeryconfig.py # celery应用配置文件 | |-- task1.py # 任务文件1 | |-- task2.py # 任务文件2 文件内容__init__.py文件内容如下:fro...原创 2019-02-15 17:23:31 · 1135 阅读 · 0 评论 -
Celery工程化代码
目录树celery-learning | |-- celery_app | | | |-- __init__.py # celery应用文件 | | | |-- celeryconfig.py # celery应用配置文件 | | | |-- t...原创 2019-02-15 14:15:33 · 283 阅读 · 0 评论 -
Celery分布式任务队列简单介绍
Celery介绍: celery通过消息进行通信,通常使用一个叫Broker(中间人)来协调client(任务的发出者)和worker(任务的处理者). clients发出消息到队列中,broker将队列中的信息派发给worker来处理。 Celery需要一种解决消息的发送和接受的方式,我们把这种用来存储消息的的中间装置叫做message broker, 也可叫做消息中间人。 作...原创 2019-02-15 10:23:52 · 314 阅读 · 0 评论 -
电商项目订单模块以及高并发的处理
当用户点击去结算时,返回订单页面cart/cart.html<form method="post" action="{% url 'order:place' %}"> {% for sku in skus %} <ul class="cart_list_td clearfix"> <li class="col01"><input type...原创 2019-03-24 20:57:33 · 7340 阅读 · 0 评论 -
支付宝支付接入
第一步:登录支付宝开放平台,填写相关信息支付宝接入平台第二步:选择研发中心,研发服务原创 2019-03-30 12:51:36 · 1044 阅读 · 0 评论 -
Django分页
1.分页books/?page=1假设每页显示10条数据页码 数据id 数据库索引1 1-10 [0:10]2 11-20 [10:20]3 21-30 [20:30]4 31-40 [30:40]5 41-50 [40:50]n [(n-1)*10:n*10]def books(request) # 获取前端page页码 page_...原创 2019-06-30 13:26:15 · 355 阅读 · 0 评论 -
Django自关联
自关联 对于地区信息、分类信息等数据,表结构非常类似,每个表的数据量十分有限,为了充分利用数据表的大量数据存储功能,可以设计成一张表,内部的关系字段指向本表的主键,这就是自关联的表结构。说明:关系属性使用self指向本类,要求null和blank允许为空,因为一级...原创 2019-07-13 18:36:33 · 1689 阅读 · 0 评论 -
Django ContentTypes组件
前言: contenttypes不是中间件,不是视图,也不是模板,而是一些"额外的数据表"!所以,在使用它们之前,你需要执行makemigrations和migrate操作,为contenttypes框架创建它需要的数据表,用于保存特定的数据。这张表通常叫...原创 2019-07-13 15:36:55 · 310 阅读 · 0 评论 -
ORM
1. 外键的跨表查询class Book(models.Model): title = models.CharField(max_length=32, verbose_name="书名") publisher_date = models.DateField(auto_now_add=True) price = models.DecimalField(max_digits=...原创 2019-09-06 13:17:03 · 1508 阅读 · 0 评论 -
Django自定义前端模板过滤器
自关系编写定义的模板过滤器filter第一步:在你的应用目录下创建一个templatetags包,与models.py同级polls/ __init__.py urls.py models.py templatetags/ __init__.py views.py第二步:在templatetags内创建一个py文件,如下polls/...原创 2019-07-01 20:53:32 · 557 阅读 · 0 评论