Sails基础之Model层的Attributes

本文详细介绍了Sails.js中Model的属性配置,包括类型配置项如type、defaultsTo,映射存储配置如columnName、columnType,功能性配置如autoIncrement、encrypt,验证器配置如allowNull、required、unique等,以及自定义验证器和primaryKey的改动。
摘要由CSDN通过智能技术生成

我们在前面已经创建了Model并为其设置了属性,Sails属性配置从功能性角度来划分,可以分为以下几种:

  • 类型配置项:主要是为属性配置其对应的数据类型及默认值;
  • 映射存储配置项:主要是为属性配置其映射到数据库中的字段名称与数据类型;
  • 功能性配置项:主要是为属性配置一些在插入数据库时的一些功能特性;
  • 验证器配置项:主要是为属性配置对其输入和内容的规则验证器,用于检查其输入时的规范性要求。

类型配置项

type

这部分值得关注的是v1.0版本较v0.12版本有很大变化,v1.0版本将v0.12种庞杂的数据类型归总为现在的5种,分别是string、number、boolean、json和ref。
json:

Any JSON-serializable value, including numbers, booleans, strings, arrays, dictionaries (plain JavaScript objects), and null.

ref:

Any JavaScript value except undefined. (Should only be used when taking advantage of adapter-specific behavior.)

v0.12种庞杂的数据类型将通过json或ref类型,结合columnType进行映射。

比如对于v0.12中的array类型,在v1.0中需要改为下面的表达方式:

Pet Model:

module.exports = {
   
  attributes: {
   
    name: {
   
      type: 'string'
    },
    color: {
   
      type: 'string'
    },
    owners: {
   
      collection: 'owner',
      via: 'pets'
    },
    tags: {
   
      type: 'json'
    },
  }
  
};

使用下面url进行数据添加:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值