如何制作mongo-db模式



我正在尝试收集数据并发送到我的MonogoDB数据库,但我对此并不熟悉在为我的数据库制作Schema时感到困惑。这是我试图发送到我的数据库和我尝试了很多搜索,但找不到合适的解决方案。我可以制作模式,但它只用于一个子,但现在我有多个子。可以通过为子列表制作模型或模式来完成吗?

{
sub: [
{
code: 'ELA2010',
sessionals: '54',
exam: '26',
total: '80',
grace: '1',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60, C:41-50, D:35-40'
},
{
code: 'MEH2450',
sessionals: '56',
exam: '26',
total: '82',
grace: '0',
grades: 'A',
range: 'A+:85-100, A:75-84, B+:61-74, B:51-60, C:41-50, D:35-40'
},
{
code: 'EEC2120',
sessionals: '64',
exam: '26',
total: '90',
grace: '0',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60, C:41-50, D:35-40'
},
{
code: 'EEC2210',
sessionals: '53',
exam: '26',
total: '79',
grace: '0',
grades: 'A',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60, C:41-50, D:35-40'
},
{
code: 'EEC2310',
sessionals: '54',
exam: '26',
total: '80',
grace: '1',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60, C:41-50, D:35-40'
},
{
code: 'EEC2510',
sessionals: '61',
exam: '26',
total: '87',
grace: '0',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60, C:41-50, D:35-40'
},
{
code: 'EEC2920',
sessionals: '61',
exam: '26',
total: '87',
grace: '0',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60'
},
{
code: 'EEC2930',
sessionals: '61',
exam: '26',
total: '87',
grace: '0',
grades: 'A+',
range: 'A+:81-100, A:71-80, B+:61-70, B:51-60'
}
],
info: {
facno: '17EHB116',
eno: 'GK6147',
name: 'Steve Jhon',
cpi: '8.91',
spi: '9.714'
}
}

这就是我试图做的,但我不知道如何为子阵列创建模式——

const mongo = require('mongoose');
const result = mongo.Schema({
sub:[
{
code: { type: String }, sessionals: { type: String },
exam: { type: String }, total: { type: String },
grace: { type: String }, grades: { type: String }, range: { type: String}
}],
info: {
facno: { type: String },
eno: { type: String }, name: { type: String }, cpi: { type: String }, 
spi: { type: String }
}
});
module.exports = Result = mongo.model('result', result);

请告诉我如何为此创建架构:(

正如其中一个答案中所指定的,您可以将mongose包与node.js.一起使用

您可以通过以下方式创建模式,

new mongoose.Schema({
sub:[ new mongoose.Schema({
code: String,
sessionals: String,
exam: String,
total: String,
grace: String,
grades: String,
range: String
})],
info: {
facno: String,
eno: String,
name: String,
cpi: String,
spi: String
}
})

您将创建一个Schema,然后使用它保存到您的MongoDB实例中。

我建议使用一个名为Mongoose的包。它使MongoDB更加简单。

要使模式支持多个子系统,您可以这样做:

new mongoose.Schema({
sub1: [{
code: String
sessionals: String
exam: String
total: String
grace: String
grades: String
range: String
},
{
code: String
sessionals: String
exam: String
total: String
grace: String
grades: String
range: String
}
],
sub2: [{
code: String
sessionals: String
exam: String
total: String
grace: String
grades: String
range: String
},
{
code: String
sessionals: String
exam: String
total: String
grace: String
grades: String
range: String
}
]
});

最新更新