![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
django
hllyzms
编程爱你不容易
展开
-
Python threading setDaemon 强制退出线程
setDaemonth.setDaemon(True) 默认参数为 FalsesetDaemon(True)将线程声明为守护线程,必须在start() 方法调用之前设置,如果不设置为守护线程程序会被无限挂起。当没有存活的非守护进程时,整个python程序才会退出。总结: 如果主线程执行完以后,还有其他非守护线程,主线程是不会退出的,会被无限挂起;必须将线程声明为守护线程之后,如果队列中的数据运行完了,那么整个程序想什么时候退出就退出,不用等待。代码示例:# -*-...原创 2021-01-06 17:13:53 · 1412 阅读 · 3 评论 -
Django swagger接口文档
安装pip install django-rest-swaggergithub 地址: https://github.com/marcgibbons/django-rest-swagger文档地址: https://marcgibbons.com/django-rest-swagger/settings/django settings加入INSTALLED_APPS = [ ... 'rest_framework_swagger', ...]swagger 配置原创 2020-11-09 09:13:33 · 420 阅读 · 0 评论 -
django bulk_create
批量保存列表解析代替 for 循环会更快 try: category = Category.objects.get(name=singledata.enter.get("6930697000004")) except: category = Category.objects.last() create_list = [] run_data = singledata.data for j in run_data: j["category"] = cate原创 2020-10-21 11:01:15 · 2341 阅读 · 0 评论 -
django serializer self.context[“request“] 设置
代码class DesignInitSerializer(serializers.ModelSerializer): element = serializers.SerializerMethodField() class Meta: model = Design fields = ("id", "name", "element", "category") def get_element(self, instance): user = self.context["request"].原创 2020-09-03 15:33:53 · 1582 阅读 · 3 评论 -
uwsgi服务 http socket
uwsgi yourfile.ini # 配置文件[uwsgi]http = 0.0.0.0:8001socket = 0.0.0.0:8002chdir = /www/studentapitest/zhishidianpythonpath = /www/studentapitest/env = DJANGO_SETTINGS_MODULE=zhishidian.linux_settingsmodule = django.core.handlers.wsgi:WSGIHandler()wor原创 2020-06-23 10:50:25 · 1025 阅读 · 0 评论 -
django 返回文件字节流
因项目中要生成Excel 并返回代码def file_iterator(file_name, chunk_size=512): ''' # 用于形成二进制数据 :return: ''' with open(file_name, 'rb') as f: while True: c = f.read(chunk_size) if c: yield c else: break返回到前端 def retrieve(self, request, *args,原创 2020-06-17 18:05:07 · 4262 阅读 · 1 评论 -
django2.2 markdown编辑器
django环境:Django==2.2.10django-mdeditor==0.1.18mysqlclient==1.4.6使用的suitpip install https://github.com/darklow/django-suit/tarball/v21.安装django-mdeditorpip installdjango-mdeditor==0....原创 2020-04-29 14:48:15 · 654 阅读 · 1 评论 -
django 跳转页面 html
django1.HttpResponse它是作用是内部传入一个字符串参数,然后发给浏览器。例如:def index(request): return HttpResponse("index")2、renderrender方法可接收三个参数,一是request参数,二是待渲染的html模板文件,三是保存具体数据的字典参数。它的作用就是将数据填充进模板文件,最后把结果...原创 2020-04-26 10:56:37 · 4325 阅读 · 0 评论 -
simple_server.py 'NoneType' object has no attribute 'split'
Python3网络编程在构造流媒体或其他’Content-Type’类型响应接口时发生如下报错信息:Traceback (most recent call last): File "/usr/lib/python3.6/wsgiref/handlers.py", line 138, in run self.finish_response() File "/usr/lib/pyt...转载 2020-04-22 15:01:32 · 599 阅读 · 0 评论 -
django channels demo websocket
这里有我的django channels 的一个demohttps://gitee.com/hllyzms_hllyzms/django-websocket-demo说明环境channels==2.1.5 channels-redis==2.3.2 daphne==2.2.4 Django==1.11.6 django-filter==2.0.0 django-redis==4.7...原创 2020-04-20 12:39:35 · 237 阅读 · 0 评论 -
pytest-django
pytest是一款简单的测试库,方便对于自己的代码进行单元测试,简单的学习使用了一下。安装pytest-django安装$ pip install pytest-django运行建立测试文件# coding=utf-8"""test_1.py """class TestClass: def test_one(self): x ...转载 2020-04-17 17:16:36 · 1586 阅读 · 1 评论 -
django test在多线程下的问题
问题描述:使用django自带的test做测试,尝试去数据库中取数据,主线程中没有问题,非主线程中取不到数据。示例代码:class MyTestCase(TestCase): def setUp(self): MyModel.objects.create(k='k0', v='v0') MyModel.objects.create(k='k1', v='v1'...转载 2020-04-17 15:55:53 · 308 阅读 · 0 评论 -
django DRF test_plus nose
django项目中使用test_plus 写测试用例安装 pip installdjango-test-plus在项目中创建test文件夹注意 文件夹名称 不能是tests 否则使用python manage.py test 运行测试用例的时候会报错django DRF 接口测试from django.test import Clientfrom test_...原创 2020-04-17 15:38:05 · 443 阅读 · 0 评论 -
DRF 配置 Redis 缓存
pip install redispip installdrf-extensionspip install django-redissettings 配置 这是全局配置 一般不设置 只在需要 缓存的接口上配置# DRF扩展REST_FRAMEWORK_EXTENSIONS = { # 缓存时间 'DEFAULT_CACHE_RESPONSE_TIMEOUT': 6...原创 2020-04-16 12:42:51 · 622 阅读 · 1 评论 -
django rest framework serializers error_messages 自定义
例子class ShopCartSerializer(serializers.Serializer): nums = serializers.IntegerField(required=True,label='数量',min_value=1,error_messages={ "min_value":"商...原创 2019-03-27 17:36:41 · 2967 阅读 · 0 评论 -
Django restframework 中的缓存
安装pip install drf-extensions使用方法使用方法:1直接使用rest_framework_extensions.cache.decorators中的cache_response装饰器来装饰返回数据的类视图的对象方法class StatisticsViewSet(mixins.ListModelMixin, viewsets.GenericViewS...原创 2019-04-01 15:31:03 · 1280 阅读 · 0 评论 -
django 已取消csrf 验证 报错 "detail": "CSRF Failed: CSRF cookie not set."
使用apizza 做API文档 请求接口报错apizza 请求时 会加上csrf但是django的session验证 还会验证CSRF去掉SessionAuthentication的验证后okclass SessionAuthentication(BaseAuthentication): """ Use Django's session fra...原创 2019-04-08 13:21:08 · 1415 阅读 · 0 评论 -
django ATOMIC_REQUESTS 事务
参考:http://www.mamicode.com/info-detail-1317046.htmlhttps://blog.csdn.net/ysjian_pingcx/article/details/51015988DATABASES = { 'default': { …… 'ATOMIC_REQUESTS': True, ...转载 2019-05-22 10:12:08 · 486 阅读 · 0 评论 -
haystack 自定义
from haystack.forms import SearchFormclass Search(View): def get(self, request): """ 获取搜索结果 """ q = request.GET.get("q") sform = SearchForm({"q":q})...原创 2019-07-02 10:30:37 · 330 阅读 · 0 评论 -
Django的auto_now=True 没更新
auto_now=True自动更新,有一个条件,就是要通过django的model层。如create或是save方法。如果是filter之后update方法,则直接调用的是sql,不会通过model层,就不会触发autu_now...转载 2019-07-03 13:29:13 · 513 阅读 · 0 评论 -
django DRF 分页 UnorderedObjectListWarning: Pagination may yield inconsistent results with an unorder
报错原因 :分页一定要排序如: def get_queryset(self): return Goods.objects.filter(classify=2, status=1).order_by('-id')没有 order_by() 就会报错原创 2019-07-03 13:45:32 · 291 阅读 · 0 评论 -
django 1366, "Incorrect string value: '\\xF0\\x9F\\x98\\x81'
django mysql存储emoji表情 要使utf8mb4 格式原来一般的字符包括中文用utf8的话,mysql是用3个字节去存储的,而emoji表情要用4个字节的utf8,也就是utf8mb4格式。改变mysql 数据编码liunx 修改mysql的配置文件:/etc/mysql/my.cnf 添加:[client]default-character-set = utf8...原创 2019-04-04 12:31:52 · 2023 阅读 · 0 评论 -
django celery AttributeError: 'str' object has no attribute 'items'
django celery 启动报错(lion) F:\django\lion>celery -A lion worker -l info[2019-03-26 09:12:17,582: WARNING/MainProcess] c:\anaconda3\envs\lion\lib\site-packages\celery\apps\worker.py:161: CDeprecati...原创 2019-03-26 09:30:07 · 2325 阅读 · 1 评论 -
django 初始化数据库
导出数据库内容为初始化文件$ mkdir appname/fixtures # 必须有 fixtures 目录,下面语句才能成功执行dumpdata 命令这个是Django自带的管理命令,可以用来备份你的模型实例和数据库dumpdata 基本数据库的转存下面的命令将把整个数据转存到db.json文件中./manage.py dumpdata > db.jsonpyth...原创 2019-03-25 17:45:22 · 2032 阅读 · 0 评论 -
django 大文件下载
使用fbv 方法@login_required(login_url='/login')def down(request): def file_iterator(fn, chunk_size=512): while True: c = fn.read(chunk_size) if c: y...原创 2018-08-29 13:46:21 · 1718 阅读 · 0 评论 -
Python 生成logo二维码 django 返回
url(r'^label_qrcode/(?P<label_num>\S+)/$',views.label_qrcode, name='label-qrcode'),def label_qrcode(request,label_num): """ 生成二维码 """ url = WX_URL.format(label_num) # 生成二维码 ...原创 2018-08-21 20:52:39 · 737 阅读 · 0 评论 -
django rest jwt vue 跨域问题
django rest framework 使用 router 注册url时,访问接口 包302错误 可能是因为请求url 写法有问题,如请求 /api/login/ 报302 ,需要去掉后面的反斜杠,正确写法 /api/login 请求跨域:简单来说就是 A 网站的 javascript 代码试图访问 B 网站,包括提交内容和获取内容。这显然是不安全的。为此,浏览器的鼻祖...原创 2018-08-31 11:39:17 · 549 阅读 · 0 评论 -
Django Channels
pip install channels==1.1.5pip install asgi-redis==1.4.2pip install Twisted-18.7.0-cp36-cp36m-win_amd64.whlpip install pypiwin32原创 2018-08-28 14:55:55 · 554 阅读 · 0 评论 -
Django——信号量
django的某些操作发生时,会发出signals,可以截获signals,并进行一些操作下面代码是在创建新用户完成时,截获signals,把保存的明文密码修改为密文 此app下创建signals.py 文件 from django.db.models.signals import post_savefrom django.dispatch import receiverf...原创 2018-07-12 09:45:04 · 2536 阅读 · 2 评论 -
Django 讲解
todo原创 2018-05-21 08:43:16 · 631 阅读 · 0 评论 -
django使用redis
安装 redis django-redissettings中配置CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/1", "OPTIONS": { "原创 2018-03-04 12:01:28 · 667 阅读 · 0 评论 -
django 1.11.6—— Celery
https://segmentfault.com/a/11900000080220501. 环境python==3.6djang==1.11.6 # 1.8, 1.9, 1.10应该都没问题celery-with-redis==3.0 # 需要用到redis作为中间人服务(Broker)celery==3.1.25 # 安装上面的会自动安装kombu==3.0.37billia...转载 2018-03-10 10:12:16 · 1101 阅读 · 0 评论 -
部署关闭 django rest framework 文档API
在 settings 文件中增加如下配置REST_FRAMEWORK = { 'DEFAULT_RENDERER_CLASSES': ( 'rest_framework.renderers.JSONRenderer', ),}原创 2018-12-13 13:47:39 · 1360 阅读 · 0 评论 -
django 自己保存二进制文件
保存post过来的文件def post(self, request): ""设置用户头像""" user_logo = request.FILES.get("user_logo") if not user_logo: return JsonResponse({"error": "参数错误"}) user = Users.objects....原创 2019-03-21 14:18:05 · 2179 阅读 · 0 评论 -
django rest framework 定义自己的登录微信验证类 自定义user表
import uuidimport warningsimport jwtfrom calendar import timegmfrom datetime import datetimefrom django.contrib.auth import get_user_modelfrom django.utils.encoding import smart_textfrom djan...原创 2019-03-21 13:13:13 · 880 阅读 · 1 评论 -
django url path 区别
django url 匹配是使用自定义模块 正则匹配,匹配规则:1、主URL开始地方不要加/ 2、主URL后面地方要加/ 3、组件(App)的URL前面不要加/ 4、主URL后面不要加$ 5、组件(App)后面要加$获取值需要在正则表达式中使用小括号,分为两种方式:位置参数url(r'^delete(\d+)/$',views.show_arg),def show_ar...原创 2019-03-07 09:25:47 · 4181 阅读 · 2 评论 -
django rest 向serializer中添加参数
想要给serializer 添加 额外的参数可以通过context 传递 def list(self, request, *args, **kwargs): queryset = self.filter_queryset(self.get_queryset()) serializer = self.get_serializer(queryset, many=True,co...原创 2019-02-12 17:04:45 · 2490 阅读 · 0 评论 -
玩转 ASGI:从零到一实现一个实时博客
最终效果ASGI 、Django Channels 简介ASGI 的完整说明我在去年做了一个翻译。ASGI 由 Django 团队提出,为了解决在一个网络框架里(如 Django)同时处理 HTTP、HTTP2、WebSocket 协议。为此,Django 团队开发了 Django Channels 插件,为 Django 带来了 ASGI 能力。在 ASGI 中,将一个网络请求...转载 2019-01-14 19:42:11 · 3480 阅读 · 0 评论 -
索引
unique_together = ["goods", "user"] 表示联合约束,其中"goods"和"user"表示不能重复,不能一样。index_together = ["user", "goods"] 表示联合索引,其中"goods"和"user"联合同步查询,提高效率。 ...原创 2019-01-10 13:20:15 · 103 阅读 · 0 评论 -
django中优雅的启动额外的socket连接
在一个django项目中需要使用的socket连接持续获取额外的一些数据,还需要用到apscheduelr控制定时任务看到一些文章是直接把apscheduler的启动、socket的创建都放在urls.py里面一开始我也这样做,但是后面每次执行python manage.py ....命令时,都会执行urls.py中添加的scheduler/socket,看来这种方式很不优雅,自己不懂...原创 2019-01-10 12:14:40 · 3841 阅读 · 1 评论