两种方式实现 1 使用最后时间判断 class Throttle(MiddlewareMixin): VIEW_LIMIT = {} def process_request(self,requst): # 限制访问次数 # 1分钟内只允许访问3次 remote_addr = requst.META['REMOTE_ADDR'] print(self.VIEW_LIMIT) if remote_addr not in self.VIEW_LIMIT: ...

阅读全文>>

测试代码: models.Tb1.objects.filter(id__lt=10, id__gt=1) # 获取id大于1 且 小于10的值 models.Tb1.objects.filter(id__in=[11, 22, 33]) # 获取id等于11、22、33的数据 models.Tb1.objects.exclude(id__in=[11, 22, 33]) # not in models.Tb1.objects.filter(name__contains="ven") # 获取name字段包含"ven"的 models.Tb1.objects.f...

阅读全文>>

常用的查询操作 <1> all(): 查询所有结果 <2> get(**kwargs): 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。 <3> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <4> exclude(**kwargs): 它包含了与所给筛选条件不匹配的对象 <5> values(*field): 返回一个ValueQuerySet——一个特殊的QuerySet,运行后得到的并不是一系列model的实例化对...

阅读全文>>

0x01 函数代码 ''' /** * 加密解密子字符串函数 * @param $string * @param $operation * @param string $key * @return bool|mixed|string * * $key = md5(md5("gyarmy")); $token = encrypt($str, 'E', $key); echo '加密:'.encrypt($str, 'E', $key); echo '<br />'; echo '解密:'.enc...

阅读全文>>

上线后出问题的原因 注意 0 和 '0' <?php #测试下注释方法 function a($a){ var_dump(empty($a)); var_dump($a==null); } //php填坑 a('0'); 原因说明 原文 测试案例 <?php #测试下注释方法 function a($a){ var_dump(empty($a)); var_dump($a==null); ...

阅读全文>>

0x01 错误原因 python manage.py makemigrations 报错提示: AttributeError: 'str' object has no attribute 'decode' 0x02 解决 直接定位到报错文件 C:\python38\Lib\site-packages\django\db\backends\mysql\operations.py 修改源码: # 头部导入 from django.utils.encoding import force_text # 报错的位置更改 q...

阅读全文>>