我试图从我的mongodb数据库模式的对象数组中找出一个特定的问题。问题是我不知道如何为这个特定的JSON文件编写或汇总查询。
这是我写的猫鼬查询。
Device.find({ _id: req.params.device_id })
.select('question.questionID surveyID')
.then(device => {
if (device.length == []) {
errors.nodevice = 'There is no device for this user';
res.status(404).json(errors);
}else{
// res.json(device[0].question.questionID);
// res.json({ "surveyID" : device[0].surveyID});
console.log(device[0].question.questionID);
Survey
// .find({"question.id": {$all: device[0].question.questionID} })
.find({ "question.id": { "$in": device[0].question.questionID } })
.then(question => {
if (question.length == []) {
errors.question = 'There is no question for this device';
res.status(404).json(errors);
}else{
res.json(question);
// res.json({ "surveyID" : device[0].surveyID});
}
})
.catch(err =>
res.status(404).json({ error: err })
);
这是json文件。
{
"user_id": "asd",
"project_id": "asdad",
"project_name": "asdea",
"question": [
{
"id": "Q_1554201813282",
"type": "checkbox",
"title": "checkbox1",
"options": {
"1554201907907": "c1",
"1554201917922": "c2",
"1554201920921": "c3"
}
},
{
"id": "Q_1554201923908",
"type": "multipleChoice",
"title": "multiple",
"choices": {
"1554201932066": "m1",
"1554201936866": "m2"
}
}
]
}
答案 0 :(得分:0)
您可以通过mongo函数python manage.py migrate
来实现。
您的查询将如下所示。
ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock