无法使用derbyjs在视图中显示文档列表

这是我第一次与derbyjs,不知道我是愚蠢的还是缺乏文档。 我有一个名为“书”的模型,我只是想显示书的名单。

这里是我的代码:

module.exports = { properties: { title: {type: 'string', minLength: 6}, author: {type: 'integer', minimum: 0}, image: {type: 'string'}, status: {type: 'integer', minimum: 0, maximum: 1}, // 1 read, 0 wants to read comment: {type: 'string'} }, required: ['title'] } 

和架构列表

 module.exports = { schemas: { auths: require('./model/auths'), products: require('./model/products'), books: require('./model/books') } } 

指数js

 app.get('/shelf', function(page, model, params, next){ model.subscribe('books', function(){ var book = model.at('books.669374b5-8470-4f3a-a25f-0995a5a92a7a'); model.ref('_page.book', book); page.render('home'); }); }); 

我期望在书中有“书”,所以我这样写了{{each}}

 {{ each books as #b}} {{ #b.title }} {{/each}} 

但没有显示,虽然这工作正常,并按预期呈现

 {{ _page.book.title }} 

也在Web控制台,这工作正常,并显示3本书

 app.model.get('books') 

注意:我通过Web控制台添加了书籍,就像这样

 app.model.add('books', {title: 'something'}) 

在订阅function里面,我试过了

 var books = model.get('books'); model.ref('_page.books', books); 

但是错误上升了

任何想法我做错了什么? 我真的很喜欢derbyjs,但是这让我失望了几天

如果你想要页面自动更新,你应该使用ref而不是get()但是,例如

 app.get('/shelf', function(page, model, params, next) { var booksQuery = model.query('books', {}); model.subscribe(booksQuery, function(err) { booksQuery.ref('_page.books'); page.render('books'); }); }); 

模板:

 {{ each _page.books as #b}} {{ #b.title }} {{/each} 

除了官方的德比文档,我发现德比常见问题是一个很好的资源。