Loopbackjs 我可以为环回模型使用非顺序id吗?

Loopbackjs 我可以为环回模型使用非顺序id吗?,loopbackjs,strongloop,Loopbackjs,Strongloop,环回使用序列号作为型号ID。我可以在服务器端使用自己的ID生成器吗?我该怎么做呢?是的,您需要做几件事: 在相应的model.json中设置“idInjection”:false以关闭自动id注入 将您想要的属性添加到模型中,然后通过在model.json中的属性上设置“id”:true,或在composer中选择道具旁边的id,将其设置为id 生成并注入id,可能在保存之前使用上的操作钩子,也可能是mixin() 可以将环回生成器(guid、uuid等)指定为应用程序中id属性的默认函数 g

环回使用序列号作为型号ID。我可以在服务器端使用自己的ID生成器吗?我该怎么做呢?

是的,您需要做几件事:

  • 在相应的model.json中设置
    “idInjection”:false以关闭自动id注入

  • 将您想要的属性添加到模型中,然后通过在model.json中的属性上设置
    “id”:true
    ,或在composer中选择道具旁边的id,将其设置为id

  • 生成并注入id,可能在保存之前使用
    上的操作钩子,也可能是mixin()


可以将环回生成器(guid、uuid等)指定为应用程序中id属性的默认函数

guid为的示例:

{
  "name": "ModelName",
  "base": "PersistedModel",
  "idInjection": false,
  "properties": {
    "id": {
      "type": "string",
      "id": true,
      "defaultFn": "guid"
    }
  },
  "validations": [],
  "relations": {},
  "acls": [],
  "methods": {}
}
据我所知,您还不能在那里指定自己的默认函数。看


如果您想要更高级的行为(例如您自己的生成器),您可以创建
模型/model name.js
文件并扩展模型的构造函数

如果使用环回4,则这是在主密钥中生成UUID的设置。 在你的模型里面,改变这个

@property({
type: 'string',
id: true,
defaultFn: 'uuidv4',
}) id?:字符串

这是在表中生成唯一id的方法