Flask序列化

2021-12-08 Views147字1 min read

将数据库取出的对象转化为JSON格式

  • 在model定义的时候给序列化的方法
    • 定义序列化函数在该函数中返回字典的keys
      • def users_schema(self):
        return {
        'id': self.id,
        'username': self.username,
        'password': self.password
        }
    • 调用RESTful API以JSON格式返回数据库表中取得的数据
      • RESTful API中文文档
      • class HelloWorld(Resource):
        def get(self):
        data = Test.query.first()
        data_serialize = data.test_schema()
        return jsonify(data_serialize)
  • 调用Flask-RESTful的 JSONEncoder类
    • 采用json.dumps()来将取出的数据序列化成json字符串
      class HelloWorld(Resource):
      def get(self):
      test_data = Test.query.all()
      data_json = json.loads(json.dumps(test_data, cls=JSONEncoder))
      return data_json
EOF