python - SQLAlchemy 嵌套 JSONIFY
问题描述
我正在编写一个端点来列出类别的嵌套级别,并且当我尝试使用 marshmallow_sqlalchemy 呈现它时。我发现没有运气。
模型
class Category(db.Model, Serializer):
__tablename__ = 'category'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(100), nullable=False)
parentId = db.Column(db.ForeignKey('category.id'), nullable=False, index=True, server_default=db.FetchedValue())
active = db.Column(db.Integer, nullable=False, server_default=db.FetchedValue())
架构
class CategorySchema(ModelSchema):
class Meta:
model = Category
class CategoriesSchema(ModelSchema):
class Meta:
model = Category
subcategories = fields.Nested(CategorySchema, many=True)
categories = Category.query.all()
items = [{'root': root, 'subcategories':
[Category for Category in categories if Category.parentId == root.id]
}
for root in categories if root.parentId == 0]
categorySchema = CategoriesSchema(many=True)
output = categorySchema.dumps(items)
print(jsonify(output))
回复:
"[{\"subcategories\": [{\"id\": 2, \"name\": \"Sample_child\", \"active\": 1}]}]"
解决方案
推荐阅读
- kubernetes - 在裸机中将 NodePort 更改为 80
- javascript - 将ajax提交添加到页面后,表单验证退出工作
- python - 在 16.04 Ubuntu 服务器上安装 dlib python 包的问题
- python-3.x - 我怎样才能对我的每一列应用一些东西?
- python - 如何计算数据框列每月的下降次数
- python - 使用 doctesting 对类内部定义的方法进行单元测试
- c# - 在 C# 的表单中计算最小和最大计算时遇到问题
- ruby - 无法向 httparty 发出请求
- elm - 'TypeError: currentSubs[i] is not a function' 在 Elm 0.19 中使用端口时
- c# - 具有约束的产品配置器架构