Javascript 无法同时实现KeystoneJS分页
我正在尝试在keystone js和F中实现分页,具体操作如下: 模型 路线/视图 在Index.js中 在middleware.js中 样板 如果我在下一页发表评论,会出现分页按钮,但箭头上的ClickLong会将我带到博客/新闻项目的第二页 很明显,这里的某个地方发生了混乱。我怀疑这是因为我对当地人处理不当,但我似乎无法在keystone网站上找到任何关于当地人应该如何工作的深入解释 我最终希望对mongo集合应用不同的过滤器,并让它在一系列引导选项卡中运行,但我认为我需要首先整理好基础知识 是否有人遇到过类似的情况并找到了解决方案?接下来是一个在快速路线中运行的回调函数。你根本没有把它定义为你路线中的一个论点;问题的一部分还在于您试图同步加载数据,这在这里不起作用 使用view.init函数公开下一个函数,然后在将数据库中的信息加载到locals.data中后调用它 路线/视图Javascript 无法同时实现KeystoneJS分页,javascript,pagination,keystonejs,locals,Javascript,Pagination,Keystonejs,Locals,我正在尝试在keystone js和F中实现分页,具体操作如下: 模型 路线/视图 在Index.js中 在middleware.js中 样板 如果我在下一页发表评论,会出现分页按钮,但箭头上的ClickLong会将我带到博客/新闻项目的第二页 很明显,这里的某个地方发生了混乱。我怀疑这是因为我对当地人处理不当,但我似乎无法在keystone网站上找到任何关于当地人应该如何工作的深入解释 我最终希望对mongo集合应用不同的过滤器,并让它在一系列引导选项卡中运行,但我认为我需要首先整理好基础知识
谢谢-我已经成功了-我在这方面的失误太令人震惊了!8-当你点击我跟踪到templates/views/helpers/index.js的分页时,它会重定向到博客-似乎我必须为每个分页实例编写一些特定的帮助程序,然后将它们与特定的分页匹配。我希望这不会是一个太大的问题,但因为现在是午夜,而且我从下午3点开始工作,所以必须等到明天。
var keystone = require('keystone');
var Types = keystone.Field.Types;
var Test = new keystone.List('Test', {
map: {name: 'title'},
label: 'Test',
singular: 'Test',
plural: 'Tests',
autokey: {path: 'slug', from: 'title', unique: true}
});
Test.add({
description: {type: Types.Html, wysiwyg: true, height: 300 }
});
Test.register();
var keystone = require('keystone');
var Test = keystone.list('Test');
exports = module.exports = function(req, res) {
var view = new keystone.View(req, res);
var locals = res.locals;
// Set locals
locals.section = 'test';
locals.data = {
test: []
};
Test.paginate({
page: req.query.page || 1,
perPage: 2,
maxPages: 5
})
.exec(function(err, results) {
locals.data.test = results;
next(err);
});
// Load All Terms
view.query('test', keystone.list('Test').model.find());
// Render view
view.render('test');
}
app.all('/test', routes.views.test);
res.locals.navLinksFooter = [
{ label: 'Test', key: 'test', href: '/test' },
.....
];
<div class="row">
<div class="col-xs-12">
<span class="pull-right">
{{>pagination}}
</span>
</div>
</div>
<div class="row row-content panel--outer panel--outer--trans">
<div class="col-xs-12" id="panel--news-detail">
{{# each test}}
<p>{{{description}}}</p>
{{/each}}
</div>
</div>
locals.data = {
test: []
};
var keystone = require('keystone');
var Test = keystone.list('Test');
exports = module.exports = function(req, res) {
var view = new keystone.View(req, res);
var locals = res.locals;
// Set locals
locals.section = 'test';
locals.data = {
test: []
};
view.on('init', function (next) {
Test.paginate({
page: req.query.page || 1,
perPage: 2,
maxPages: 5
})
.exec(function(err, results) {
locals.data.test = results;
next(err);
});
});
// Load All Terms
view.query('test', keystone.list('Test').model.find());
// Render view
view.render('test');
}