2015-03-04 7 views
0

У меня есть MySQL таблицу следующим образом:Установите значение столбца по умолчанию NULL

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

Я создал запись в таблице, где USERID = 1 и USERAVATAR = 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}" 
    ] 
} 

Может кто-нибудь знать, что может быть проблемой здесь?

ответ

0

Функция serialize отлита в строку. Это то, что вы хотите в своем выходе JSON, массив строк вместо массива объектов?

Если нет, замените функцию serialize, чтобы не использовать unicode()

Смежные вопросы