今天遇到一灵异事件,ORM更新操作,一字段始终不生效,最后发现问题原因是postgres的jsonb导致的
表结构:
CREATE TABLE XX(value jsonb default '{}',...)
ORM:
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy.dialects.postgresql import JSONB
db = SQLAlchemy(服务器托管)
class XX(db.Model):
__tablen服务器托管ame__ = 'xx'
value = db.Column(JSONB, default={}, doc='xxx')
...
常规的更新写法,对他不生效,需要如下操作才能更新成功:
from sqlalchemy.orm.attributes import flag_modified
obj = XX.query.first()
obj.value = new_value_dict
flag_modified(obj, "value") # !!!! 不加就更新不成功
db.session.add(xx)
db.session.commit()
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
VPN 主要的安全服务有以下 3 种: 保密性服务:防止传输的信息被监听; 完整性服务:防止传输的信息被修改; 认证服务:提供用户和设备的访问认证,防止非法接入; VPN 介绍 专用网络:专用网就是 在两个网络(两个地区)之间架设一条专用线路,但是它并不需要真…