- json.dumps()的default参数
def json_dumps(self, obj, sort_keys=False):
ignore_nan=False if self.form_data.get('all_columns') else True
return json.dumps(
obj,
default=utils.json_iso_dttm_ser, # 对时间类型的数据进行处理
ignore_nan=True,
sort_keys=sort_keys,
)
一般default参数很少使用,default参数的作用是对不能直接序列化的类型进行操作
- 自动添加权限
sqla.event.listen(Database, 'after_insert', set_perm)
sqla.event.listen(Database, 'after_update', set_perm)
def set_perm(mapper, connection, target): # noqa
if target.perm != target.get_perm():
link_table = target.__table__
connection.execute(
link_table.update()
.where(link_table.c.id == target.id)
.values(perm=target.get_perm()),
)
# add to view menu if not already exists
merge_perm(security_manager, 'datasource_access', target.get_perm(), connection)