Автоматически генерировать идентификаторы, начинающиеся с 1000, в Loopback

Я хочу автоматически генерировать идентификаторы для модели в Loopback, чтобы первый идентификатор был 1001, затем 1002, 1003... и так далее. Важно, чтобы все идентификаторы были больше 1000.

Я пытался добавить тысячу значений id перед сохранением и после операции сохранения, но перед перехватом свойство id не определено, а после перехвата изменение не сохраняется. Я использую постгрескл.

Как я могу это сделать?

Мое определение модели в externalorder.json:

{
  "name": "Externalorder",
  "base": "PersistedModel",
  "idInjection": false,
  "options": {
    "validateUpsert": true
  },
  "postgresql": {
    "schema": "public",
    "table": "externalorder"
  },
  "properties": {
    "externalorderId": {
      "type": "number",
      "id": true,
      "generated": true,
      "required": false,
      "length": null,
      "precision": 32,
      "scale": 0,
      "postgresql": {
        "columnName": "externalorder_id",
        "dataType": "integer",
        "dataLength": null,
        "dataPrecision": 32,
        "dataScale": 0,
        "nullable": "NO"
      },
      "_selectable": false,
      "comments": "tilausnumero"
    },
...

person ritvje    schedule 16.02.2016    source источник


Ответы (1)


Вместо использования идентификатора по умолчанию, сгенерированного из 0, вы можете использовать глобально уникальные идентификаторы. Это большие строки, всегда уникальные. Возможно, вы также можете использовать тип: номер для идентификатора, никогда не проверял его.

 {
  "name": "Externalorder",
  "base": "PersistedModel",
  "idInjection": true, // Set to true
  "options": {
    "validateUpsert": true
  },
  "postgresql": {
    "schema": "public",
    "table": "externalorder"
  },
  "properties": {
    "containerId": {
      "defaultFn" : "guid", // use globally unique id
      "type": "string"
    },
person Overdrivr    schedule 17.02.2016
comment
Спасибо за ваш ответ, хотя на самом деле он не решает мою проблему, поскольку мне особенно нужны идентификационные номера, начинающиеся с 1000. - person ritvje; 21.02.2016