如何在Sails js中设置模型属性的索引?

时间:2016-01-08 04:54:22

标签: sails.js

这是我的模特课:

module.exports =
{
  attributes:
  {
    id          : {type: 'integer', unique: true, primaryKey: true},
    title       : {type:'string', required:true},
    firstName   : {type:'string', required:true},
    lastName    : {type:'string', required:true},
    phone       : {type:'string', required:true},
    email       : {type:'string', required:true, unique: true},
    password    : {type:'string', required:false},
    roles       : {type:'array'}
  }
}

如何设置电子邮件和手机属性的索引? 此外,是否可以创建像index(firstName,lastName)?

这样的compule索引

我努力在Google上搜索,但没有找到任何关于在模型类中创建索引的结果。

1 个答案:

答案 0 :(得分:5)

您可以为任何属性添加索引属性,以便在您的适配器支持时创建索引。您指定索引属性。

目前,Waterline不支持属性定义中的多列索引。

此外,在向属性添加唯一属性时,系统会自动为该属性创建索引。

在您的示例中,我们只需要将 index:true 添加到手机属性。

module.exports =

{
  attributes:
  {
    id          : {type: 'integer', unique: true, primaryKey: true},
    title       : {type:'string', required:true},
    firstName   : {type:'string', required:true},
    lastName    : {type:'string', required:true},
    phone       : {type:'string', required:true, index: true},
    email       : {type:'string', required:true, unique: true},
    password    : {type:'string', required:false},
    roles       : {type:'array'}
  }
}

虽然您使用的是Sailsjs,但实际上这是Sails ORM的文档,即Waterline - 请参阅here