无法在keystone.js的数据库中创建项目

时间:2015-07-29 13:59:50

标签: node.js mongodb mongoose keystonejs

我使用Yeoman创建了一个keystone.js文件夹。在文件keystone.js中,我在keystone.start()之前添加一些代码来添加新项目并列出所有当前项目如下:

total 16
-rw-r--r--  1 kyleandrews  staff  1193 Jul 29 08:55 DirectoryFinder.class
-rw-r--r--  1 kyleandrews  staff   934 Jul 29 08:55 DirectoryFinder.java
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:55 otherdir1
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:55 otherdir2
-rw-r--r--  1 kyleandrews  staff     0 Jul 29 08:55 otherstuff1
-rw-r--r--  1 kyleandrews  staff     0 Jul 29 08:55 otherstuff2
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 telephonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 tèlephonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 télephonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 tèlèphonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 télèphonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 téléphonne
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 tèlèphonnè
drwxr-xr-x  2 kyleandrews  staff    68 Jul 29 08:36 téléphonné

但是,Post.model.find中的帖子是一个空数组,这意味着没有添加任何项目。谁能帮我吗? 提前谢谢。

1 个答案:

答案 0 :(得分:3)

newPost.save方法是异步执行 与您的代码一样,在成功保存newPost之前,您的查询帖子。

newPost.save(function(err) {
    Post.model.find(function (err, posts) {
        if (err) return console.error(err);
        console.log(posts);
        keystone.start();
    });
});

你的代码应该这样写。