gpt4 book ai didi

javascript - 具有动态嵌套对象的 Mongoose 模式

转载 作者:行者123 更新时间:2023-11-30 16:33:23 24 4
gpt4 key购买 nike

我正在尝试创建一个文档架构,其中我将拥有一个动态对象。示例:

var ModuleSchema = new Schema({
name : String,
description : String,
type : String,
age : String,
options : {}
});

是否可以做到

options : {}

就这样?里面有任意属性。当我尝试访问路由 /api/something 以获取集合中的所有文档时,出现 TypeError: Cannot read property 'find' of undefined。这可能是因为我定义模式的方式。有什么想法吗?

编辑:

var Module = require('../models/module');var auth =require('../config/auth');module.exports = function(router,Module){
router
.get('/api/modules' , auth.checkAuth, function(req,res){
Module.find(function(err,modules){
if(err){
res.send(err);
}else{
res.json(modules);
}
});
})
.post('/api/modules' , auth.checkAuth,function(req,res){
var module = new Module();
console.log(req.body);
module.name = req.body.name;
module.type = req.body.type;
module.description = req.body.description;
module.age = req.body.filename;
module.options = req.body.options;
module.save(function(err,module){
if(err){
res.send(err);
}else{
res.json({ id : module._id});
}
});
});

最佳答案

我用的是这样的。

// Importing the Users Mongoose Scheme
var User = require('../app/models/user');
var Feed = require('../app/models/ufeed');

module.exports = function(app) {


// A Route to get all users info
app.get('/user/all', function(req, res) {
// use mongoose to get all users in the database
User.find(function(err, user)
{
// if there is an error retrieving, send the error. nothing after res.send(err) will execute
if (err)
{
res.send(err);
}
// return all todos in JSON format
res.json(user);

});
});

在我的 server.js 文件中,我正在创建一个这样的应用程序。

 var app      = express();

然后将它传递到我的路由文件。

 require('./app/routes.js')(app); // load our routes and pass in our app

希望对您有所帮助。

关于javascript - 具有动态嵌套对象的 Mongoose 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33012356/

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