Sails.js ORM create方法因`E_INVALID_RECORD`而失败

时间:2018-04-07 09:14:29

标签: sails.js

我的sails.js应用程序配置为使用sails-disk。

我正在尝试创建一个文档,但它始终与E_INVALID_RECORD失败,消息为Failed process the values set for the record

这是我的Reservation型号:

module.exports = {
    tableName: 'reservations',
    attributes: {
        person: {
            type: 'string',
            required: true
        },
        date: {
            type: 'number',
            required: true
        },
        slot: {
            type: 'string',
            required: true
        },
        partner: {
            model: 'user',
            required: true
        }
    },
};

以及我在使用它的方式

const createdBooking = await Reservation.create(doc).fetch();

可能的原因是什么?

编辑:1 这里是doc对象

{
  date: 1523089876,
  slot: "3:01 PM",
  person: "Ayush Bahuguna",
  partner: 1
}

编辑:2 我应该提供一些说明。我写了一个class来解析请求体,这里doc是该类的实例化对象。

我尝试直接将req.body传递给create方法,但它确实有效,但它不适用于实例化的对象。

这是我的班级:

class BookingRequest {
    constructor({person, date, slot, partner}){
        this.person = person;
        this.date = date;
        this.slot = slot;
        this.partner = partner;
    }
}

编辑3:所以,我尝试JSON.parse(JSON.stringify(doc)),这次它起作用了。这真是奇怪。

0 个答案:

没有答案