【问题标题】:How to create register with relation model embeded?如何创建嵌入关系模型的寄存器?
【发布时间】:2020-10-25 16:18:48
【问题描述】:

我使用Loopback 3 创建我的应用程序,使用Postgres

我创建了一个many-to-many ussign hasManyThrough 关系,如下所示:

  • 产品有多种成分
  • 成分有很多成分
  • 产品成分多
  • 成分属于产品
  • 成分属于成分

如何创建/编辑具有一系列成分 ID 的产品,例如:

POST /products

{
  name: "Potato Chips",
  ingredients: [ 5, 7, 3, 20 ]
}

我怎样才能获得嵌入成分列表的产品?

GET /products/1

{
  id: 1,
  name: "Potato Chpis",
  ingredients: [
    { name: "Potato" },
    { name: "Vegetal Oil" }
    ...
  ]
}

【问题讨论】:

    标签: loopbackjs strongloop loopback


    【解决方案1】:

    1/ 要创建具有多种成分的产品,我建议制作一个自定义遥控器,将您的产品与成分一起带入体内,并在成分上创建一个循环以将它们链接到使用add 方法将您的产品一一列出(假设产品通过Composition 有许多成分)

    Product.ingredients.add(ingredientData, callback);
    

    2/要获得具有嵌入成分列表的产品,您需要将 include relation 属性添加到您的 GET 路由(reactjs 中给出的示例):

    const response = await Axios.get(`/api/products/${productId}`, {
      params: {
        filter: {
          include: [
            { relation: 'ingredients' },
          ],
        },
      },
    });
    

    【讨论】:

      猜你喜欢
      • 2021-07-06
      • 1970-01-01
      • 1970-01-01
      • 2019-02-09
      • 2018-12-23
      • 2017-05-21
      • 1970-01-01
      • 2021-12-20
      • 1970-01-01
      相关资源
      最近更新 更多