【发布时间】:2017-03-09 06:34:20
【问题描述】:
我想停止在 Strongloop 上为我的模型使用自动生成的数字 ID。 Strongloop 可以生成字符串 uid,例如067e6162-3b6f-4ae2-a171-2470b63dff00?
【问题讨论】:
标签: api model uniqueidentifier strongloop uid
我想停止在 Strongloop 上为我的模型使用自动生成的数字 ID。 Strongloop 可以生成字符串 uid,例如067e6162-3b6f-4ae2-a171-2470b63dff00?
【问题讨论】:
标签: api model uniqueidentifier strongloop uid
是的,strong-loop 会在模型定义中生成带有 uuid 函数调用的 uuid。您可以在模型属性中使用类似下面的内容。
"id": {
"type": "string",
"defaultFn": "uuid"
}
您可以查看以下网址以获取更多信息。 https://loopback.io/doc/en/lb3/Model-definition-JSON-file.html 和 https://github.com/strongloop/loopback/issues/292。
【讨论】:
您需要修改 .js 文件和 .json 文件。 根据逻辑,你也可以添加一个远程方法,从node-uuid模块生成uuid。
我在这里假设一个 User 模型和 id、name、age 的属性,并在 User 模型中创建一个条目。
用户.json
{
"name": "User",
"properties": {
"id": {
"type": "string",
"id": true,
"defaultFn": "uuid",
"required": true
},
"name": {
"type": "string",
"required": true
},
"age": {
"type": "string",
"required": true
}
}
用户.js
var uuid = require('node-uuid');
module.exports = function(User) {
var userObj = {};
userObj.id = uuid();
userObj.name = 'John';
userObj.age = 22;
User.create(userObj, function(err, userInstance){
if (err) {
console.log(err);
} else if (userInstance) {
console.log(userInstance);
}
});
}
这会起作用。
【讨论】: