SQLAlchemy or 查询

2022年06月10日 ,作者: 黄兵

最近在使用 SQLAlchemy 的时候需要对多个字段进行查询,需要使用到 or 查询,在 SQLAlchemy or 查询示例如下:like_param = f'%{get_company_name}%' query_like_companies = IPCrawlerCompany.query.filter( or_(IPCrawlerCompany.name.like(like_...

异步加载 CSS 的最简单方法

2022年06月09日 ,作者: 黄兵

为了提高页面性能和弹性,我们可以做的最有影响力的事情之一:是以不延迟页面呈现的方式加载 CSS。这是因为默认情况下,浏览器会同步加载外部CSS——在下载和解析 CSS 时停止所有页面渲染——这两者都会导致潜在的延迟。当然,在允许页面开始渲染之前,至少应该加载网站的一部分 CSS,并且要立即将初始 CSS 获取到浏览器,我们建议内联(或 HTTP2 服务器推送)CSS。对于整体数量较少的网站,仅此一...

Python 字符串插入指定字符串

2022年06月02日 ,作者: 黄兵

最近在处理一堆字符串的时候,需要对字符串指定的位置插入字符串,下面是示例:原有字符串:405582插入字符串后的结果:40-55-82对于上面要求我们应该怎么实现呢?我们可以使用循环,但是有些麻烦,下面是示例代码:base_16_format = '405582'base_16_format_list = list(base_16_format)base_16_format_list.insert...

itsdangerous.exc.BadTimeSignature: Signature b'pn2lywt7kfsyjnfyhhfunf33bra' does not match

2022年05月30日 ,作者: 黄兵

最近在使用 itsdangerous 生成用户验证密钥的时候出现了如下错误:itsdangerous.exc.BadTimeSignature: Signature b'pn2lywt7kfsyjnfyhhfunf33bra' does not match出现问题的原因:是由于基于时间的签名无效,则引发。也就是签名可能被篡改,会出现这个异常。解决方案:对出现的异常进行判断,示例代码如下:from ...

在 Python 中发送 html 页面邮件

2022年05月26日 ,作者: 黄兵

最近在网站上增加了一个邮件订阅的功能,每次又新文章或者是其他重要消息,通过电子邮件通知用户。在使用邮件订阅的时候,用户在网站输入电子邮件之后,通过链接激活邮件,有新文章增加,通过已经激活的邮件通知订阅人,整个是这样的一个流程。但是在编写后端服务的时候,遇到一些问题,主要是通过电子邮件发送 html 页面问题,需要自定义页面的内容,通过电子邮件发送,所以需要用到模板。经过研究 Python 有 Ji...

如何修复:[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1076)

2022年05月26日 ,作者: 黄兵

今天在使用 Python 发送邮件的时候出现了如下错误:[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1076)出现问题的原因:使用 SSL 发送邮件,端口是 465 而不是 587,下面是错误的代码:try: ssl_context = ssl.create_default_context() service...

Angular disable 导致无法获取值的解决办法

2022年05月25日 ,作者: 黄兵

最近再使用 Angular 写后台的时候,出现 FormControl Disable() 无法获取值,下面是示例代码:从后端获取值:getCloudEmailSubscribeInfo() { this.loading = true; this.sub = this.phoneNumber.getEmailSubscribeInfo(this.data.id).subscribe(r...

Javascript 取消事件默认行为

2022年05月21日 ,作者: 黄兵

最近在使用表单的时候,默认点击按钮会通过 action 值提交到后端,导致无法在表单出现问题的时候,无法很好的给出提示,所以决定使用 Javascript JQuery.ajax() 向后台提交数据,所以首先是需要取消表单按钮的默认事件动作。取消默认事件的方法有下面三种方式:cancelabledefaultPreventedpreventDefault()returnValue我们在使用的时候,...