Docker 使用笔记
Docker 介绍 Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker 允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软件的速度。 Docker容器与虚拟机类似,但二者在原理上不同。容器是将操作系统层虚拟化,虚拟机则是虚拟化硬件,因此容器更具有便携性、高效地利用服务器 …
Git 基本使用Doc
分支管理必读 A successful Git branching model Github 网络问题 如果在本地 Terminal push 不上去代码,可以尝试在 /etc/hosts 中加入下面代码,明确指定 github.com 的 IP 地址。 text 140.82.112.4 github.com 另外也可以尝试修改 DNS,防止被污染。 Xcode 项目依赖 使用 Clash 魔法 …
正则表达式Doc
举例子 base64正则匹配 text ^[A-Za-z0-9+/]*={0,2}$ 特殊字符 点 . 表示匹配换行符 \n 以外的任何字符。 限定符 星号 * 表示匹配前面的子表达式零次或多次。 加号 + 表示一次或多次,至少一次。 问号 ? 表示零次或一次。 ^ 表示匹配字符串的开始位置, $ 表示匹配字符串的结束位置。 () 使用 括号 () 用来标记一个子表达式的开始和结束位置。 [] 和 …
命令行Doc
概要 文档可参考 the-art-of-command-line / 命令行的艺术 如今有 AI 了,也就不需要记住大量选项,高频使用的命令自然而然会记住。 awk AWK 镇楼 shell cat table.csv | awk -F',' '{print $4}' alias 下面是我在 .zshrc 的 alias 相关配置,非常实用。 shell alias a='. venv/bin/a …
魔兽世界漫游指南 - 历史篇
本文重点关注魔兽世界的重大历史走向,以及世界中各个地方的风土和人情,目的是让自己在玩游戏的时候能够理顺剧情,经常 AFK 的话也能前后关联起来,魔兽世界的世界观确实太大,另外游戏的很多玩法比如职业、天赋、专业、PVP、PVE 等等就不提了,只聊剧情。 魔兽争霸 1.0 兽人与人类 1994 年1月15 发布 很久以前,堕落泰坦 萨格拉斯 密谋血洗整个艾泽拉斯。为此,萨格拉斯操控人类法师 麦迪文 的 …
Django 的中间件执行顺序
中间件是 Django 用来处理请求和响应的钩子框架。它是一个轻量级的、底层级的“插件”系统,用于全局性地控制 Django 的输入或输出。 MIDDLEWARE Django 自带了一些已经内置的中间件,你可以直接使用,它们被记录在 built-in middleware reference 中。 python MIDDLEWARE = [ 'django.middleware.security …
数据库的 join 连接类型
内连接 内连接为默认连接方式,只有两张表都匹配的行才显示。 sql SELECT * from a INNER JOIN b on a.name=b.name; 左(外)连接 左边的表不加限制,会全部显示出来,右边的只会显示符合搜索条件的记录,不匹配的记录会以 null 显示。 sql SELECT * from a LEFT JOIN b on a.name=b.name; 右(外)连接 右边的 …
Django 的软删除设计
设计一个 Django 的软删除方案,要求数据库在删除的时候不能物理删除数据,同时尽量不要太侵入代码业务。 这里用到了 Django 的 Manager,它赋予了 Django Model 操作数据库的能力,每个 Model 都包含一个 Manager,比如我们常用的 objects 就是默认的 Manger。 这里我替换了默认的 manager ,并重新实现了其 get_queryset 方法, …
浅谈 Django-REST-Framework 的设计与源码R
最近又重新接触 DRF,翻看文档发现,当时很难理解的东西,如今一看就懂了,顺带看了源码,也比较容易理解,至少比 Django 的源码简单不少。下面开始从 DRF 的设计和源码两个方面,结合自己的看法,谈谈DRF。 APIView APIView 是 DRF 概念体系中最基本类视图,它基于 Django 的 View,同时又实现了一层对自己创造的概念的封装,比如 permission_classes …
Vagrant 虚拟机 Ubuntu16.04 安装 MariaDB
由于宿主机安装了 MySQL,为了避免安装 MariaDB 造成 MySQL 无法使用,所以在 Vagrant 中安装 Mariadb。 更换 网易 apt-get 源 /etc/apt/sources.list 读取源软件列表 sudo apt update 更新软件版本 sudo apt upgrade 安装 MariaDB sudo apt install mariadb-server 安全 …