gpt4 book ai didi

node.js - Actor 错误: Cast to string failed for value

转载 作者:太空宇宙 更新时间:2023-11-04 03:02:43 24 4
gpt4 key购买 nike

我想创建一个交易模块,在成功交易后,用户文档(在本例中用户向另一个用户汇款)也将被更新。

a.在 user.js(这是用户模型)中,除了名称、密码、电子邮件(等)之外,我创建了这个属性,它将保存各个用户的交易相关历史记录。请看看我是如何使用它的:

transaction_history:[{
transactionid:String,
timestamp:String,
type:String,
balance:Number,
status:String

}]

b.当发件人单击表单中的发送按钮时,将创建一个交易文档,之后用户文档(此处为发件人)应随交易信息一起更新。

//create transaction document, works fine
Transaction.create({transactionid:uniqid(),
timestamp:moment().format(datemask),
amount:balance,
sender:sendfrom,
receiver:sendto,
status:"done"
}, function(err, tr){
if(err) throw err;
else {

//I want sender document to update with transaction info
User.findOne({email:sendfrom}, function(err, sendfrom){
if(err) {console.log("error at sender side");}
else
if(sendfrom!=null){
// console.log("tr: "+tr); //fine
sendfrom.balance-=balance;
sendfrom.transaction_history.push({

transactionid:tr.transactionid,


// timestamp:tr.timestamp,
// type:"debit",
// balance:tr.amount,
// status:tr.status

}
);
sendfrom.save();
console.log("sender's current balance is: "+sendfrom.balance);


};
});
}});

c.但后来我明白了:

events.js:163
throw er; // Unhandled 'error' event
^
CastError: Cast to string failed for value "{ transactionid: '1amhrummxjhnhv0w4' }" at path "transaction_history"

为什么会出现这个错误?我需要您的建议!谢谢

最佳答案

您不能将“类型”一词用作对象。只需重命名为其他名称,例如“something_type”。

关于node.js - Actor 错误: Cast to string failed for value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50549253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com