如何修改某些列的“ fetchAll”?

时间:2019-07-10 16:54:50

标签: strapi

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

如何以及在哪里可以编辑“ ctx.query”?

非常感谢!

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

1 个答案:

答案 0 :(得分:0)

您可以通过多种方式来执行此操作,其中之一是在模型的生命周期函数afterFetchAll()中。无论是否使用GraphQL,它都应该起作用。

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

这样,您将能够从获取的模型数组中删除所有列/字段。

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

有关更多信息,请参考here