Javascript 续集don';无法按预期写入数据

Javascript 续集don';无法按预期写入数据,javascript,typescript,postgresql,sequelize.js,next.js,Javascript,Typescript,Postgresql,Sequelize.js,Next.js,在Next.js上下文中,我试图使用以下代码片段在表中插入数据: const user=new user(); user.firstname=“John”; user.lastname=“Appleseed”; user.email=“约翰。appleseed@apple.com"; 等待用户。创建() 但当我检查日志时,我看到的是 基本上,我在请求中输入的数据不会写入数据库,而是以某种方式接收它(如\u previousData所示)。但我不知道为什么会从数据值移动到这些\u先前的数据 这是

Next.js上下文中,我试图使用以下代码片段在表中插入数据:

const user=new user();
user.firstname=“John”;
user.lastname=“Appleseed”;
user.email=“约翰。appleseed@apple.com";
等待用户。创建()
但当我检查日志时,我看到的是

基本上,我在请求中输入的数据不会写入数据库,而是以某种方式接收它(如
\u previousData
所示)。但我不知道为什么会从
数据值
移动到这些
\u先前的数据

这是我正在使用的模型

核心模式:

导出默认类用户{
id!:bigint
散列!:字符串
名字?:字符串
姓氏?:字符串
电子邮件?:字符串
isValidated?:布尔值=false
异步创建():承诺{
试一试{
等待UserEntity.create({
假设:假,
名字:这个,名字,
lastname:this.lastname,
电子邮件:this.email
});
}捕获(错误){
console.error('User.create',error.message)
抛出错误
}
}
}
这是与Sequelize和我的PG相关的实体


接口用户属性{
id?:bigint
哈希?:字符串
名字?:字符串
姓氏?:字符串
电子邮件?:字符串
accountValidated:布尔值
}
接口UserCreationAttributes扩展了可选的{}
导出默认类UserEntity扩展模型实现UserAttributes{
公共id!:bigint
公共哈希!:字符串
公共名?:字符串
公共姓氏?:字符串
公共电子邮件?:字符串
公共帐户已验证!:布尔值
public readonly createdAt!:日期
公共只读更新日期!:日期
public readonly accounts?:AccountEntity[];//注意这是可选的,因为只有在代码中显式请求时才会填充它
公众协会:{
账户:协会;
};
}
UserEntity.init({
身份证:{
类型:DataTypes.BIGINT,
primaryKey:没错,
allowNull:错,
自动递增:真,
独一无二:真的
},
散列:{
类型:DataTypes.STRING,
allowNull:错,
独一无二:真的
},
名字:{
类型:DataTypes.STRING,
阿洛诺:是的
},
姓氏:{
类型:DataTypes.STRING,
阿洛诺:是的
},
电邮:{
类型:DataTypes.STRING,
阿洛诺:是的,
独一无二:没错,
验证:{
电子邮件:{
msg:“此电子邮件格式不正确”
}
}
},
已验证的帐户:{
类型:DataTypes.BOOLEAN,
defaultValue:false
},
}, {
sequelize,//我们需要传递连接实例
modelName:'用户',
是的,
tableName:“blk_用户”,
时间戳:真
})
UserEntity.beforeValidate(用户=>{
user.hash=`usr_${v4()}`
})
UserEntity.beforeCreate(实例=>console.log('beforeCreate',实例))
我试过的

  • [x] 注释挂钩
  • [x] 评论协会
编辑11/16 6:39 CET
它似乎与我声明模型、接口和模型的方式有关。我将深入研究它

您是否查看了
create
中的结果值?刚刚检查,“createResult”:{“id”:“8”,“accountValidated”:false,“firstname”:null,“lastname”:null,“email”:null,“hash”:“usr_3ec34b36-6900-4b10-af30-c643764fdba”,“createdAt”:“2020-11-15T12:28:36.637Z”,“updatedAt”:“2020-11-15T12:28:36.637Z”}在
create
call之前,检查UserEntity中的
attributes
rawtattributes
之类的内容。不确定
create
是一个静态方法。我尝试过这个方法:const UserEntity=UserEntity.build({accountValidated:false,firstname:this.firstname,lastname:this.lastname,email:this.email})console.log('u attributes',userEntity.'u attributes)console.log('u creationAttributes',userEntity.'u creationAttributes)都是
未定义的(我的意思是在调用
create