【问题标题】:Set Column default value to NULL将列默认值设置为 NULL
【发布时间】:2015-03-04 07:01:23
【问题描述】:

我有一个MySQL 表如下:

create table USER
(
   USERID               int not null auto_increment,
   USERAVATAR           varchar(1024) default NULL,
   primary key (USERID)
);

我在USERID = 1USERAVATAR = NULL 的表中创建了一个条目。

Main.py

user_list = session.query(USER).all()   
return jsonify(users=[r.serialize() for r in user_list])

sqltables.py

class USER(Base):
    __tablename__ = 'USER'

    USERID = Column(Integer, primary_key=True)
    USERAVATAR = Column(String(1024))

    def serialize(self):  
        return unicode({           
        'id': self.USERID,        
        'userAvatar': self.USERAVATAR 
        })

问题是即使USERAVATAR 已在数据库中设置为NULL,我得到None 作为我的`JSON 输出。

{
  "users": [
    "{'userAvatar': None, 'id': 1}"
  ]
}

有人知道这可能是什么问题吗?

【问题讨论】:

    标签: python mysql null flask sqlalchemy


    【解决方案1】:

    您的 serialize 函数正在转换为字符串。这是您在 JSON 输出中想要的,是字符串数组而不是对象数组吗?

    如果没有,请将您的 serialize 函数更改为不使用 unicode()

    【讨论】:

      猜你喜欢
      • 2019-05-15
      • 1970-01-01
      • 2016-12-28
      • 1970-01-01
      • 2019-08-17
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多