flask json 格式下 decimal 不是正确格式的问题

import  decimal

class DecimalEncoder(json.JSONEncoder):

  def default(self, o):

    if isinstance(o, decimal.Decimal):

      return float(o)

    super(DecimalEncoder, self).default(o)

# and then:

json.dumps(chart_list,..., cls=DecimalEncoder)
class JSONEncoder(json.JSONEncoder):
    def default(self, o):
        if isinstance(o,ObjectId):
            return str(o)
        if isinstance(o,Decimal):
            return str(o)
        return json.JSONEncoder.default(self,o)
配置到flask应用中
app.json_encoder = JSONEncoder


 

posted @ 2018-12-20 20:50  libaibuaidufu  阅读(1013)  评论(0)    收藏  举报