Django
一些Django开发经验总结
倾云鹤
宝可梦训练家
展开
-
Django接入支付宝支付
一、 申请沙盒账号进入沙盒环境配置RSA2(SHA256)密钥生成后,需要把应用公钥复制进去,获取支付宝公钥保存好应用私钥主要好支付宝公钥和应用私钥格式,以下为举例alipay_public_key.pem-----BEGIN PUBLIC KEY-----MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAns4fKUa1T1dvJGJXPqESxsciOVdmC1MMvha3NIGrdYhWTXpS22klru9yPp2htIRE4TW5M原创 2020-06-05 00:53:38 · 1476 阅读 · 0 评论 -
ViewSet不经过Swagger传参给serializer
①ViewSet不经过Swagger传参给serializer②ViewSet自定义filter用于筛选request中数据1. filter.py class TeacherFilterBackend(BaseFilterBackend): def filter_queryset(self, request, queryset, view): if not request.user.is_authenticated: re原创 2020-06-03 00:57:41 · 747 阅读 · 0 评论 -
Django调用微信推送接口
源码:Gitee地址欢迎Star~一、微信授权登录(OAuth2.0) OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。具体详情可以参考阮一峰blog 参考文档:微信公众平台开发者文档二、申请公众号测试账号申请地址获取appID和appsecret下拉,扫描测试号二维码,关注后右侧会出现用户列表记录出现的微信号,即为用户的**openid**自定义消原创 2020-05-27 12:18:55 · 1145 阅读 · 0 评论 -
Mysql数据库问题
问题之前遇到的一个问题,我跑testcase的时候,突然出现这个问题,一开始以为是数据库迁移的问题,删了之后,发现还是有问题,后来仔细看报错信息,才明白,原来是中文编码的问题。mysql默认编码是Latin1,因此,我们需要更改为utf-8解决方案修改my.ini文件...原创 2020-05-20 00:05:13 · 827 阅读 · 0 评论 -
rest_framework.serilizer中获取user
为了更精确的序列化,有时候不可避免的需要在序列化时进行ORM操作,同时有时需要校验该user是否有权限等,因此,可以通过这种方式1. view传到TestSerializer中user = request.useruser_serializer = TestSerializer(instance=userArray, many=True, context={'user': user})2. 在TestSerializer中获取class TestSerializer(serializers.M原创 2020-05-13 23:56:03 · 892 阅读 · 0 评论 -
与DRF集成自定义fliter
主要目的:使用filter完成模糊查询1. 使用FilterSet执行pip install django_filter命令导入from django_filters import rest_framework as filters使用FilterSet将其添加到filterset_class视图类的参数中使用新的FilterSet时,仅需要更改导入路径如果要默认使用django-filter后端,请将其添加到DEFAULT_FILTER_BACKENDS设置中。# settin原创 2020-05-13 22:53:25 · 995 阅读 · 0 评论 -
unittest之TestCase类使用
1. 为什么使用unitest?主要用于自动化测试用例的开发和执行,这里的测试则是创建一个测试数据库,当正常结束时,会删掉测试数据库2. 如何使用unittest1. 在app下新建test.py文件2. 导入unittest库import unittest3. 创建类继承TestCase类,eg.class GameTest(unittest.TestCase):4. 在类中定义test开头的方法,即可使用3. 注意事项1. 必须要有setUp和tearDown方法2. self.a原创 2020-05-13 13:24:32 · 1601 阅读 · 0 评论 -
Django中多条件查询优化
Django中多条件查询传统模式当查询条件为两个时,假设我们这里查询条件为tag、nameif tag: if name: all_result = test.objects.filter(tag=tag, name=name) else: all_result = test.objects.filter(tag=tag)else: if name: all_result = test.objects.filter(na...原创 2020-05-11 01:00:57 · 1512 阅读 · 0 评论