隐藏回送模型中的嵌套属性

时间:2019-05-20 09:34:05

标签: javascript node.js loopbackjs

我正在创建引用另一个模型的环回模型(model1),并希望隐藏嵌套模型(model2)的某些属性。另外,我只想将它们隐藏在此模型1中。我该如何解决这个问题?

我尝试了隐藏属性,该属性可以与当前的model1属性配合使用,而不能与嵌套的model2属性配合使用。

{
  "name": "Model1",
  "base": "PersistedModel",
  "idInjection": true,
 ...
  "properties": {
    "pet": {
      "type": "Model2",
    }
 ...
}

{
  "name": "Model2",
 ...
  "properties": {
    "name": {
      "type": "string",
    }
 ...
}

我想在这里在Model1资源管理器中隐藏Model2的属性“名称”

谢谢!

2 个答案:

答案 0 :(得分:1)

您是否查看了include-with-filter文档。我希望这可以解决您的问题,或者共享到目前为止您已经尝试过的更多描述性代码。

这是另一个示例,该示例使用预定义的模型关系来包含来自相关模型的选择性字段。

{"include": [  
  {"relation":"relationName", 
   "scope":{"fields": ["Field1","Field2"]} 
  },
  {"relation2":"relation2Name", 
   "scope":{"fields": ["Field3","Field4"]} 
  },
]}

注意:您将无法隐藏ID

答案 1 :(得分:0)

  

我想在这里在Model1资源管理器中隐藏Model2的属性“名称”

为此,您只需将以下行添加到model2.json中:

search_value LIKE prefix_match

您正在寻找protected property,如果该对象嵌套在另一个对象中,则不会显示受保护的字段。