Dynamic Zones not retrieving nested components in v4 (REST API)

Found a solution in this post : Strapi V4 populate Media and Dynamiczones from Components - #9 by nextrapi

And here is my controller :

const { createCoreController } = require("@strapi/strapi").factories;

module.exports = createCoreController("api::study.study", ({ strapi }) => ({
  async findOne(ctx) {
    const { id } = ctx.params;
    const { query } = ctx;

    const entity = await strapi.entityService.findMany("api::study.study", {
      ...query,
      populate: {
        blocks: {
          populate: {
            image: true,
            keyNumber: {},
            textImage: { populate: { image: true } },
          },
        },
      },
    });
    const sanitizedEntity = await this.sanitizeOutput(entity, ctx);

    return this.transformResponse(sanitizedEntity);
  },
}));```