我的模型包括用户和图书。我希望将所有图书作为对象数组嵌套在每个用户对象中,以展示每个用户拥有的图书。我正在尝试使用marshal将图书嵌套为列表放在用户字段中,但是没有任何反应。响应中只有用户的数组,没有图书的痕迹,也没有错误代码。思路如下:
books_fields = {
'id': fields.Integer,
'type' : fields.String,
'created_at': fields.DateTime,
'user_id' : fields.Integer
}
users_fields = {
'id': fields.Integer,
'name' : fields.String,
'created_at': fields.DateTime,
'books': fields.List(fields.Nested(books_fields))
}
users = session.query(model.Users).outerjoin(model.Cities)
.filter_by(weather = args.weather).all()
for user in users:
books = session.query(model.Books).outerjoin(model.Users)
.filter_by(user_id = user.id).all()
user.books = marshal(books, books_fields)
return {'users': marshal(users, users_fields)}, 200
问题在于书籍没有显示。