python之flask向janja模板引擎传值

**

如果想给前端的模板引擎通过ajax返回json数组,且每一条json数据都是一个对象时,这时候会抛出异常。

**

此时需要通过自定义的转换函数,先将对象转换为字典,再讲字典转换为json字符串。

#定义一个Article类的对象的转换函数,接收的参数是一个article对象
#分别按字典的格式将属性值和属性名对应好
def article_trans(article):
    return {
        "article_id":article.article_id,
        "article_title":article.article_title,
        "article_keywords":article.article_keywords,
        "article_content":article.article_content,
        "article_content":article.article_content,
        "article_pub_time":article.time
    }

在调用json.dumps()方法时

json_str = json.dumps(article,default=article_trans)

这样就可以将一个对象转为json字符串响应前端。

还有就是 “article.time” 这个字段是一个datetime类型 直接转换也会刨出异常。我们需要在调用json.dumps()方法之前转成字符串类型

article.time = str(article.article_pub_time)

猜你喜欢

转载自blog.csdn.net/qq_43750656/article/details/103821265