gpt4 book ai didi

javascript - 无法使用 derbyjs 在 View 中显示文档列表

转载 作者:行者123 更新时间:2023-11-30 17:08:55 28 4
gpt4 key购买 nike

这是我第一次使用 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');
});
});

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

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

但没有任何显示,尽管这工作正常并按预期呈现

{{ _page.book.title }}

同样在 web 控制台上,这工作正常并显示 3 本书

app.model.get('books')

注意:我是通过网络控制台添加书籍的,就像这样

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

在订阅功能中,我尝试过

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}

除了官方 Derby 文档外,我还找到了 derby-faq成为一个很好的资源。

关于javascript - 无法使用 derbyjs 在 View 中显示文档列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27392324/

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