我对环回很陌生。 我想创建随机唯一号,并确保它不存在于数据库中。如果它已经存在于我的数据库中,那么我将不得不再次生成该数字,直到它唯一为止。 因此,在我的模型中,我还放置了唯一索引,但是问题是,如果它是唯一的,它将显示错误并停止我的过程,但是我想重复这样做。
为了生成随机数,我使用了 randomstring 库。
这是我的代码
1)我的远程方法
Testdata.remoteMethod(
'uniqueNumber', {
http: {
path: '/uniqueNumber',
verb: 'post',
status: 200,
errorStatus: 400
},
accepts: [
{
arg: 'data',
type: 'object',
http: {
source: 'body'
}
}
],
returns: {
arg: 'status', type: 'string'
}
}
);
Testdata.uniqueNumber = function (data, cb) {
var len = 3;
var fname = data['fname'].substring(0,3);
var randomstring = require("randomstring");
var randomString = randomstring.generate({
length: len,
charset: 'numeric',
});
var _referralcode = fname +""+ randomString;
//now update customer
var createArray = {"referralcode": _referralcode}
Testdata.create(createArray, function (err, result) {
if (err) {
return cb(err);
}
cb(null,result)
})
}