在django admin的 change list界面里,自定义一个action, 当执行这个action之后,一般来说页面会刷新,所有选中状态会消失,

查了半天也没发现有太简单的方法,什么重写一个template等等,就为了一个选中状态,懒得搞。

于是在action中用mark_safe标签把一个带值的hidden渲染到页面,admin class 里增加两个js媒体文件,根据id值自动点击之。

class ReceiptAdmin(admin.ModelAdmin): ... def sum(self, request, queryset): sum_ids = [] for q in queryset: sum_ids.append(q.id) receipt_sum = queryset.aggregate(Sum('amount')) self.message_user(request, mark_safe(f'选中的发票金额合计: {receipt_sum["amount__sum"]} …
/media/upic/2021/07/01/flower-cross-wall.jpeg

之前有个自用web服务架在树莓派上,一直通过frp内网穿透服务,用https://niubi.com:8888的方式访问,最近做Paypal支付,想直接在本机调试异步回调,之前微信开发在服务器上直接调试实在太粗旷了。

结果设置通知url的时候, PayPal只支付443端口,不支持8888,娘的,马清扬的Alipay开发都可以支持不同端口啊。

用“Nginx frp 反向代理”搜到若干不靠谱文章后,直接把443转到8888(域名,不是IP)搞定。

Nginx关键配置:

proxy_pass https://niubi.com:8888; proxy_ssl_server_name on;

参考:https://www.gitmemory.com/issue/fatedier/frp/888/648284110

早上打开阿里云首页严重超时,看了下Chrome Console,赫然发现一行提示“鸿蒙首屏模块执行等待超时”

这是什么鬼。。。

这么多年了,受英语书写影响,在django 模板里写filter,参数前面的冒号后老是习惯性加个空格,然后老是出错,娘的。

这是对的 {{ product_cart.price|local_price:product_cart.currency }} 这会报错 {{ product_cart.price|local_price: product_cart.currency }}

docker 打包image的时候,因为没指定django版本,自动升级到了3.2,工厂有人哇哇叫说二维码扫不出东西了,查了下发现手机端产品标签内容页变404了

urlpatterns += i18n_patterns( path('', admin.site.urls, name='index'), ... 别的配置... )

这样会导致别的配置都不可用,把位置挪到最后像下面一样,就可以了,这什么鬼问题。

urlpatterns += i18n_patterns( ... 别的配置... path('', admin.site.urls, name='index'), )

很久以前嘲笑Java框架的时候流行的一句话, 现在深度学习领域里, 更甚。。。

之前用chatterbot+itchat做微信机器人逗人乐,现在正式要做在线客服的时候发现安装chatterbot老是出问题,而且之前的闲聊给我的感觉也只是扯蛋用的而已。

发现了rasa,意图识别和故事编排听起来很诱人,但是安装更蛋疼。。。

还是随便搞个aiml算了, 或者就正则一下固定回复。。。

certbot-auto 永久不可用,可能是python2的原因吧。

改snap

ref: https://blog.csdn.net/Dancen/article/details/112571444

------------ 我是又老又秃头的分割线 -----------------

ubuntu + nginx 下这个要简单一点, 估计是升级了, https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-20-04

sudo certbot --nginx -d example.com -d www.example.com

sudo systemctl status certbot.timer

泛域名, 又用name.com的域名的话, 可以考虑这个: https://github.com/laonan/certbot-dns-name-com

微信开放平台那迷宫一样的API调用,数据时而xml时而json,加解密示例是python2.7的, 这么多年了没人改一个3.x的出来,Python成员变量居然大驼峰命名。

龙哥程序员出身,但对程序员不是那么友好啊。。。

这种混乱的API架构,哪门子的小而美。。。

先是参考这里,但是最后不成功:https://blog.csdn.net/sinat_36939362/article/details/95391676?utm_medium=distribute.wap_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.wap_blog_relevant_pic&depth_1-utm_source=distribute.wap_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.wap_blog_relevant_pic

然后按这里来,成功了:https://die-antwort.eu/techblog/2017-12-setup-raspberry-pi-for-kiosk-mode/

关键步骤:

A 安装X Server及窗口管理软件:

sudo apt-get install --no-install-recommends xserver-xorg x11-xserver-utils xinit openbox

B 安装浏览器:

sudo apt-get install --no-install-recommends chromium-browser

C 配置Openbox, 位置 /etc/xdg/openbox/autostart

# Disable any form of …

用django自己的dumpdata命令导入数据,总是碰到各种外键及权限问题。直接用psql命令试试

导出:

进入要获取备份的容器 docker docker exec -u root -it 容器名 /bin/bash

备份

pg_dump -h localhost -p 5432 -U laonan xxx(数据库名) > /数据库dump备份文件目录/laonan-data-20201216-0200.bak

先进入要恢复数据的容器清空数据

docker docker exec -u root -it 容器名 …

参考链接:https://shumeipai.nxez.com/2015/07/12/raspberry

i-install-dlna-streaming-media-server.html

设置挂载的硬盘老是提示找不到,改半天权限啥的没用,懒得继续研究,把配置文件/etc/minidlna.conf内默认媒体目录作为一个软连接链到目标目录即可。

免费,占用资源还小。

先折腾Docker里的东西。

ImportError: Could not import 'drf_yasg.generators.OpenAPISchemaGenerator' for API setting 'DEFAULT_GENERATOR_CLASS'. ImportError: cannot import name 'SchemaGenerator' from 're st_framework.schemas.generators' (/Users/...../.local/share/virtualenvs/......./lib/python3.7/site-packages/rest_framework/schemas/generators.py).

在settings.py 里增加如下配置节即可:

SWAGGER_SETTINGS = { "DEFAULT_GENERATOR_CLASS": "rest_framework.schemas.generators.BaseSchemaGenerator", ....

来源: https://www.gitmemory.com/issue/axnsan12/drf-yasg/410/511449292

按官网和网上N多教程,先在settings.py同级目录下新建一个文件celery.py,然后修改同级目录下的__init__.py,blah blah。。。

docker一启动,Django App就退出,妈蛋的邪门了,Celery官网文档都这么不靠谱?

没事改个名字,把celery.py改成my_celery.py,成了。。。

估计今天Build Image的时候Django自动升级到了3.1的原因?没道理网上都没人发现这事啊。。。

certbot-auto renew --no-self-upgrade

为毛要这样?问Kongfu Wall。。。

单个apt安装东西的时候,还好,大不了源码编译安装一下,但docker里批量装东西, 就蛋疼了,用debian的源慢如蜗牛,用国内源时不时Hash错误,本来几分钟的事硬是搞成几个小时。

当后代知道这段历史,不知道是惊诧还是已经认为理所当然了。

如果这篇东西还在,又不巧被后一代的你们看到了,说一说。。。

psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

lsof -i tcp:5432查看端口啥都看不见

解决:

sudo rm …

/etc/modules-load.d/目录下创建一个uinput.conf文件

# in file /etc/modules-load.d/uinput.conf # Load uinput module at boot uinput

lsmod命令可以检查是否加载

lsmod | grep uinput