9

Loopback uses sequential number for model ID. Can I use my own ID generator on server side? How do I go about doing that?

Sam
  • 1,288
  • 1
  • 13
  • 22

3 Answers3

10

It is possible to specify Loopback generators (guid, uuid, ...) as a default function for id properties in your model definition file.

example with guid:

{
  "name": "ModelName",
  "base": "PersistedModel",
  "idInjection": false,
  "properties": {
    "id": {
      "type": "string",
      "id": true,
      "defaultFn": "guid"
    }
  },
  "validations": [],
  "relations": {},
  "acls": [],
  "methods": {}
}

As far as I know, you can't specify there your own default function yet. See related github issue.

If you want more advanced behavior (e.g. your own generator), you can create models/model-name.js file and extend a constructor of your model.

Ivan Schwarz
  • 814
  • 1
  • 14
  • 22
4

Yes, you would need to do a few things:

amuramoto
  • 2,838
  • 1
  • 11
  • 15
2

If you use Loopback 4 then this is the setting for generating UUID in prime key. Inside you Model change this.

@property({
type: 'string',
id: true,
defaultFn: 'uuidv4',

}) id?: string;

This is the way to gen a unique id in your table.

erevos13
  • 351
  • 3
  • 12