Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mongoose保存嵌套对象数组-Node.js_Javascript_Node.js_Mongodb_Express_Mongoose - Fatal编程技术网

Javascript Mongoose保存嵌套对象数组-Node.js

Javascript Mongoose保存嵌套对象数组-Node.js,javascript,node.js,mongodb,express,mongoose,Javascript,Node.js,Mongodb,Express,Mongoose,我已经创建了我的模型,可以通过手动列出对象来保存一个对象数组,但是这在生产中不起作用,因为我的数组的大小并不总是相同的 下面是我的代码示例。在stackRank字段下保存对象数组时遇到的问题 如果有人有任何建议,这将是伟大的和一个救生圈 猫鼬模型 在Express中保存代码 所需功能 我不希望为嵌套在stackRank中的字段appUsers单独保存数组的每个值,而是希望能够一次保存整个数组,因为它的长度不总是三个。它的长度几乎总是不同的,所以虽然我编写的代码适用于这种大小的数组,但它实际上对我

我已经创建了我的模型,可以通过手动列出对象来保存一个对象数组,但是这在生产中不起作用,因为我的数组的大小并不总是相同的

下面是我的代码示例。在stackRank字段下保存对象数组时遇到的问题

如果有人有任何建议,这将是伟大的和一个救生圈

猫鼬模型

在Express中保存代码

所需功能

我不希望为嵌套在stackRank中的字段appUsers单独保存数组的每个值,而是希望能够一次保存整个数组,因为它的长度不总是三个。它的长度几乎总是不同的,所以虽然我编写的代码适用于这种大小的数组,但它实际上对我来说无法正常工作

我希望数据如何保存在Mongo中的图片

您可以尝试对当前代码进行此修改

let stackRank = []; 
for(let elem of array) //array is your array variable, i suppose
    stackRank.push({appUsers: elem}); 

mySchema.stackRank = stackRank; 

您可以尝试对当前代码进行此修改

let stackRank = []; 
for(let elem of array) //array is your array variable, i suppose
    stackRank.push({appUsers: elem}); 

mySchema.stackRank = stackRank; 

你能先创建阵列,然后将所有对象推到阵列上吗?然后将其添加到mySchema中?你能先创建数组并将所有对象推送到它吗?然后把它加入mySchema?谢谢@Mehdi!我的问题是确保我传入了与数据库中的对象匹配的JS对象数组。我事先没有考虑使用appUsers键创建对象数组。谢谢你的帮助,这将在我的应用程序中的许多地方产生巨大的变化!谢谢@Mehdi!我的问题是确保我传入了与数据库中的对象匹配的JS对象数组。我事先没有考虑使用appUsers键创建对象数组。谢谢你的帮助,这将在我的应用程序中的许多地方产生巨大的变化!
let stackRank = []; 
for(let elem of array) //array is your array variable, i suppose
    stackRank.push({appUsers: elem}); 

mySchema.stackRank = stackRank;