最近在云主机上通过openvpn连接公司环境,拨通vpn连上后却发现有些地址就断开了连接。观察了下,发现公司vpn默认推送的路由太多了,覆盖掉了我这边的某些地址的路由。只能设法在vpn连接后再执行个脚本啥的,替换或是添加下路由。
Docusaurus禁用“编辑此页面”链接
最近在用Docusaurus V2.0编写产品的文档,发现生成的文档页面左下角会有个“编辑此页面”(英文版是”Edit this page”)的链接。因为这个文档交付给客户后其实没必要再进行编辑了,所以需要看下如何禁用掉这个链接。
Django 3.2加载子目录下的app报错
最近看着Django 3.2 LTS发布了,就想着啥时候把当前项目用的Django 2.2版本给升级下。结果一升级,发现项目直接无法启动了,界面上在报类似下面的错误:
django.core.exceptions.ImproperlyConfigured: Cannot import ‘myapp’. Check that ‘apps.myapp.apps.MyappConfig.name’ is correct.
我在写这个项目的时候,习惯把自己创建的app都放到了项目src下的apps目录下,一个app一个目录,要import也应该是import apps.myapp啊,这里的import myapp失败是个啥问题?难道是这个写法到Django 3.2已经不支持了?
Python信任SSL自签名证书
最近发现有的客户环境中用的是自签名的SSL证书来提供服务,于是项目中依赖这些服务的代码就开始咔咔报证书验证失败的错误了。
由于项目代码中并没有忽略证书验证的配置,所以只好想办法在不修改代码的情况下忽略证书的验证了。
批量禁用Confluence用户
近期想清理一批Confluence中离职的用户,以便于能释放一些License出来,却发现官方似乎没有提供批量清理的功能。官方的REST API中也没有提供禁用用户的接口,只好学习下Selenium,自己写个脚本来清理了。
Django执行指定脚本
用Django写项目,遇到临时需要处理数据库的问题时,会考虑直接让脚本在项目环境中运行,这样就可以直接用定义好的模型和方法了。
这里提供几种方法,通过Django执行指定的脚本,让脚本直接在Django项目的环境中来运行。
音乐不手滑,防手误关闭YouTube Music
最近都在用YouTube Music来听歌,但是这东西有个问题就是他只是个Chrome的APP。当你习惯了网易云音乐这些应用点击关闭按钮就自动隐藏的操作后,点击YouTube Music的窗口就会悲剧了。
所以我简单写了个Chrome的扩展,向YouTube Music的页面中注入了一段代码,防止手误直接把YouTube Music给关闭掉,音乐不手滑,欢迎试用~
下载地址: https://chrome.google.com/webstore/detail/jmbefokklnmcljplonbibpiakiphbfag
audit日志按时间进行压缩存储
最近搞等保的事情,在操作系统上安装了audit服务。但按照等保的要求,审计日志需要定时异地转储,所以查一下如何将audit服务的日志文件可以按时间来进行rotate。
Celery获取队列任务数/清空队列
最近在Django编写的一个系统中希望能加入对当前celery积压任务的展示,并且能提供功能来清理队列。我们使用了RabbitMQ作为了celery的broker,除了直接用kombu来编码实现需求外,还可以直接使用以下的方法来实现需要的功能,减少一些broker配置的代码。
Django动态生成Choices
最近使用Django admin在后台来添加删除一些数据,使用模型中的字段的choices来实现下拉框的功能,但是发现后期choices如果要新增或是删除就会要重新生成migrations文件,为了解决这个问题,只能设法让django的choices可以动态地生成了。