admin管理员组文章数量:1558075
这是建立在连接数据库成功的基础上
文件结构
--m_use.py
--user.py
m_use.py
以下是m_use.py文件的主要的一部分,不完整,
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class U12(db.Model):
__table_args__ = {'extend_existing': True}
__table__ =db.Table('usser1234',db.metadata,db.Column('id',db.String(11), primary_key=True),
db.Column('country', db.String(20), default=None, nullable=False, comment="国家"),
db.Column('name', db.String(20), default=None, nullable=False, comment="用户姓名"),
db.Column('phone', db.String(20), default=None, nullable=False, comment="电话"))
def find_all_user(self):
result = db.session.query(self).all()
return result
user.py
#以下是user.py文件的一部分,不完整
from module.m_users import U12
@user.route('/user')
def user_demo():
result = U12.find_all_user(U12)
return result #这是出错点 1
当你浏览器的地址栏中输入http://127.0.0.1:5000/user会出现这个错误
是因为1
返回值得形式不是json要求的数据形式(列表),
json数据形式:
[{},{},{},{}]
{[ ],[ ],[ ],[ ]}
{{},{},{},{}}
解决方案:新建一个model_list函数,用来处理查询结果,将其变为JSON要求的数据形式
def model_list(result):
list = []
for row in result:
dict = {}
for k,v in row.__dict__.items():
if not k.startswith('_sa_instance_state'):
dict[k] = v
list.append(dict)
return list
将user_demo函数变为如下形式
@user.route('/user')
def user_demo():
result = U12.find_all_user(U12)
list = model_list(result)
return list
本文标签: objectTypeErrortypeserializablejson
版权声明:本文标题:TypeError: Object of type *** is not JSON serializable 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727372184a1111311.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论