在 Strapi v5 中,我有这些链接的集合类型,全部是多对多:患者、过敏、合并症、处方。这一切在管理区域中都运行得很好。我观察一个病人:有他的过敏、他的合并症、他的处方。我查看过敏症:有患有过敏症的患者名单。等等。一切都好。
但是,当我通过浏览器运行 API 请求并要求其填充关系时(例如,http://localhost:1337/api/患者?populate=*),我得到了未填充的关系数组。对于(简化的)示例:
{“full_name”:“Fakey McFakeFace”,“过敏”:[],“处方”:[],“合并症”:[]}
Fakey McFakeFace 肯定有过敏、处方和合并症,它们都详细地显示在管理界面中。
在 Strapi 文档中,我认为 populate=* 应该会导致出现这些内容。但他们没有。
是的,所有这些集合类型均已发布,并由公共用户设置为可 findOne 和 findMany。
所以我想我的问题是:
我错过了什么?非常感谢您的想法。
您尝试过strapi v5插件填充吗?
它是原始 strapi 插件 populate 的分支,当时不支持 Strapi v5。
populate=* 仅填充一种关系,深度为 1 层,但使用上面的插件,您可以填充自定义深度或默认最大深度。您的 Api 调用如下所示:
/api/articles?pLevel
或
/api/articles?pLevel=10