如何用某些列修改 "fetchAll"?

How can I modify "fetchAll" with certain columns?

我想通过选择某些列(SELECT column1, column2, ... 而不是 SELECT *)来限制 return strapi.services.myType.fetchAll (ctx.query); 的结果。

如何以及在何处编辑 "ctx.query"?

非常感谢!

P.S。我也不知道如何在这种情况下使用 GraphQL(用于后端)。有人可以给我提示吗?

您可以通过多种方式实现,其中之一是在模型的生命周期函数中 afterFetchAll()。无论您是否使用 GraphQL,它都应该有效。

afterFetchAll: async (model, response, options) => {
    model.forEach(m => {
        m.unset('column1')
        m.unset('column2')
    })
}

这样您就可以从获取的模型数组中删除任何 columns/fields。

并且此文件应位于:api/MyType/models/MyType.js

有关详细信息,请参阅 here