在Django中使用migrate初始化数据库数据

在Django中使用migrate初始化数据库数据

django 提供了fixtures
来完成对应的需求,具体可参考官方文档
。其核心是写一个 fixtures 文件,然后命令行通过 loaddata
来完成数据表的初始化操作。但是我们并不能在蓝鲸的线上环境中操作命令行(也许有,但是我不太了解),线上环境是通过读取迁移文件来完成数据库的迁移操作的,所以可以通过把对应的代码写入migration
文件来完成数据库的初始操作。具体的操作方法如下:

阅读更多
理解JWT(JSON Web Token)认证及python实践

理解JWT(JSON Web Token)认证及python实践

JWT 认证

Json web token (JWT), 根据官网的定义,是为了在网络应用环境间传递声明而执行的一种基于 JSON 的开放标准((RFC 7519).该
token 被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT
的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该
token 也可直接被用于认证,也可被加密。

阅读更多
DevOps中几个时间的概念

DevOps中几个时间的概念

此处所说的DevOps主要是指基于精益方法(Lean)的DevOps,所以,几个时间的概念如下:

  • Takt Time (TT)
  • Cycle Time (CT)
  • Actual Takt Time (ATT)
  • Lead Time (LT)
阅读更多
在Python中将字典转换为对象

在Python中将字典转换为对象

起因

涉及到这个问题的原因是因为从YAML文件中读取到的属性,被保存到了一个字典中,如下:

1
2
3
4
5
6
7
8
9
10
11
import yaml
import os

from Utils.utils import _dict_to_object

yml_file = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'config.yml')
with open(yml_file, 'r') as f:
try:
config = yaml.load(f, Loader=yaml.Loader)
except:
config = {}
阅读更多
DevOps基本术语和概念

DevOps基本术语和概念

软件开发方法论

划分开发工作的过程(通常划分为不同的阶段)就被称为软件开发方法论。

这些不同的工作阶段可能包括:

  • 可交付的产品或工件的规范。需求分析阶段。
  • 根据规范完成代码的开发和验证。研发和测试阶段。
  • 将代码部署到最终客户或生产环境。部署和交付阶段。
阅读更多