【问题标题】:Strapi beta - update other tables from other controllerStrapi beta - 从其他控制器更新其他表
【发布时间】:2020-01-10 11:56:19
【问题描述】:

我有 2 种内容类型“产品和库存”,“库存”需要在“产品”更新时更新。我正在尝试从“产品”控制器更新“库存”。

目前我正在遵循 - https://strapi.io/documentation/3.0.0-beta.x/concepts/controllers.html#core-controllers 下的说明

当我尝试更新“库存”时发生错误:

error TypeError: Cannot read property 'update' of undefined

这是我的代码:

const { sanitizeEntity } = require('strapi-utils');
const stock             = require('../../stock/controllers/Stock');

module.exports = {
    async update(ctx) {

      let test = await stock.update(ctx.params, ctx.request.body);

      let entity;
      entity = await strapi.services.products.update(
         ctx.params,
         ctx.request.body
      )
    },
}

我还在我的产品控制器中尝试了以下操作,导致同样的错误:

let stock = await strapi.services.stocks.update(
         ctx.params,
         ctx.request.body
      )

有什么想法吗?

【问题讨论】:

  • 您好!为确保为您提供问题的确切答案,您能否详细说明您正在尝试做的事情。
  • 基本上,在产品更新时,我需要运行影响其他内容类型(表)的业务逻辑。我希望我的业务逻辑执行许多不同的操作,包括从其他内容类型(表)创建、更新、删除数据。

标签: controller strapi


【解决方案1】:

我建议你触发services 而不是controllers

因为在您编写的代码中,您没有传递正确的参数。

controller 函数必须由路由调用,而不是由另一个控制器调用。

【讨论】:

猜你喜欢
  • 2015-09-06
  • 1970-01-01
  • 1970-01-01
  • 2011-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多