2014-02-25 33 views
-2
var category = mongoose.model('category', { 
    text : String, 
    todo : { 
       text: String, 
       done: Boolean 
      } 
}); 

我正在做一个使用MEAN堆栈的待办事项列表。用户可以添加/删除类别(例如work/home),并且在每个类别中都会列出他们可以添加/删除的待办事项。这是我应该如何建模数据?猫鼬模型,我可以做到吗?

编辑:另外!我会为todo的API调用?它会是... category.todos.find(err,category.todo){....}

+0

首先''category''应该是''category''和'todo ='应该是'todo:'它们是'syntax'错误。 – Lekhnath

+0

oops,固定。所以现在它会工作? – user3248729

回答

0

我不认为只有一种独立的方式来创建模型来实现您的要求,如果我是你,我会做一些象下面这样:

var mongoose = require('mongoose') 
    , Schema = mongoose.Schema; 

var TodoSchema = newSchema({ 
    whattodo : String 
    , dueDate :{type:Date, default:Date.now} 
}); 

var CategorySchema = new Schema({ 
    type:String 
    , name : String 
    , __some__other__fields__ : __SOME_TYPE__ 
    , todos : [TodoSchema] //as each category can have multiple todos 
}); 

var Category = mongoose.model('categories', CategorySchema); 

module.exports = Category; 

另一种方法可能是

创建单独todo模型和存储referencecategory模型,这是一样的东西存储foreign key在RDBMS中。

+0

我如何使用猫鼬调用todos来访问所有todos? – user3248729