• 对于sqlalchemy——text类型字段存取json一体化的代码


    class AdapterParameterDefineModel(BaseModel):
    
        __tablename__ = 'AdapterParameterDefine'
    
        adapter = Column(VARCHAR(128), primary_key=True)
        update_token = Column(VARCHAR(64), nullable=False)
        vendor = Column(VARCHAR(64), nullable=False)
        define = Column(TextJson, nullable=False)
        create_time = Column(TIMESTAMP, server_default=text('CURRENT_TIMESTAMP'))
        update_time = Column(TIMESTAMP, server_default=text('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'))
    
    
    import sqlalchemy.types as types
    class TextJson(types.TypeDecorator):
        """
        自带json dump load的数据类型
        """
        impl = types.TEXT
    
        def process_bind_param(self, value, dialect):
            return json.dumps(value)
    
        def process_result_value(self, value, dialect):
            if value is not None:
                return json.loads(value)
            else:
                return value
    
    #可以直接obj.define['xxx'],相当于可以直接把对象define拿到的值做字典处理。对于长文本非常有用。
    

      

  • 相关阅读:
    礼物(枚举,二分)
    空调(差分)
    Prefix Equality(哈希)
    py导入时段报表+清理旧文件
    php 0504
    php 0511
    php 0512
    php 0506
    php 0505
    php 0510
  • 原文地址:https://www.cnblogs.com/575dsj/p/8295422.html
Copyright © 2020-2023  润新知