Вложенная модель в Loopback API - PullRequest
0 голосов
/ 05 июня 2019

Я создаю API, используя Loopback, и я создал модель.Одним из свойств является «глубина», и внутри него должно быть 4 других числовых свойства.Поэтому я сделал глубину массивом чисел, но в моем файле fish.json это выглядит так:

"depth": {
      "type": [
        "number"
      ],
      "required": true
    },

Вот весь файл (fish.json):

{
  "name": "Fish",
  "plural": "fish",
  "base": "PersistedModel",
  "idInjection": true,
  "options": {
    "validateUpsert": true
  },
  "properties": {
    "name": {
      "type": "string",
      "required": true
    },
    "scientific": {
      "type": "string",
      "required": true
    },
    "environment": {
      "type": "string",
      "required": true
    },
    "minClimate": {
      "type": "number",
      "required": true
    },
    "maxClimate": {
      "type": "number",
      "required": true
    },
    "depth": {
      "type": [
        "number"
      ],
      "required": true
    },
    "avLength": {
      "type": "number",
      "required": true
    },
    "maxLength": {
      "type": "number",
      "required": true
    },
    "avWeight": {
      "type": "number",
      "required": true
    },
    "maxWeight": {
      "type": "number",
      "required": true
    },
    "maxAge": {
      "type": "number",
      "required": true
    },
    "description": {
      "type": "string",
      "required": true
    },
    "imageUrl": {
      "type": "string",
      "required": true
    }
  },
  "validations": [],
  "relations": {},
  "acls": [],
  "methods": {}
}

Я посмотрел в документах Loopback, и, похоже, я могу использовать здесь вложенную модель.Как мне изменить этот массив на вложенную модель?Нужно ли создавать новую модель, а затем каким-то образом добавить эту новую модель в свойство глубины?

По сути, я хочу, чтобы JSON выглядел так:

"depth": {
      "min": "0",
      "max": "0",
      "avMin": "0",
      "avMax": "0"
    },

1 Ответ

0 голосов
/ 05 июня 2019

Вы можете попробовать это: -

"depth": {
      "min": {"type": "number"},
      "max": {"type": "number"},
      "avMin": {"type": "number"},
      "avMax": {"type": "number"}
    }
...