Tag: 分页

Google数据存储中的节点分页

我在使用Google数据存储区分页时遇到问题。 我有一个没有限制的查询有几百个结果。 我想检索5,发回给用户,如果用户想要更多,他们会检索下一个5。 按照文档我创build查询: var query = datastore.createQuery('ResultsKind').filter('name', 'bobby').limit(5).autoPaginate(false); 然后我运行这个查询来得到前5个结果: datastore.runQuery(query, callback); 这是callback函数: function callback(err, entities, nextQuery, apiResponse) { if (err) { // An error occurred while running the query. console.log('err ' + err); return; } if (nextQuery) { console.log('res = ' + entities); datastore.runQuery(nextQuery, callback); } else { // No more results exist. console.log('no […]

在Mongoose中检索embedded文档的分页结果

使用mongoose,如果我有一个Note模型,我可以检索分页和sorting结果使用查询选项的findfunction,如此… Note.find({ creator: creatorId}) .select('text') .limit(perPage) .skip(perPage * page) .sort({ name: 'asc' }) .exec(function(err, notes) { Note.count().exec(function(err, count) { res.render('notes', { notes: notes, page: page, pages: count / perPage }) }) }); 如果我在父文档( notesContainerSchema )中embeddedNote模式,可以实现相同的function(筛选,select,限制,跳过,sorting等): var noteSchema = new Schema({ creator: { type: String }, text: { type: String } }); var notesContainerSchema = new […]

如何分页在mongoose的_id数组?

目前,我有这种混乱,这是分层架构中的一系列项目。 所以在技术上,每个用户都有一个购物车,我想分类购物车的物品。 例如,假设购物车有18个物品存储。 我想将购物车分页到只有5个项目。 这是模式 const UserSchema = new Schema({ email: { type: String, unique: true, lowercase: true}, cart: [{ type: Schema.Types.ObjectId, ref: 'Product' }], }); 这是路线 我目前的做法 router.get('/cart', (req, res, next) => { User.findOne({ _id: req.user._id }) .populate({ path: 'cart', options: { limit: 5 } }) .exec((err, user) => { res.render('order/cart', { user: user […]

在node.js中用chromeless分页

我在AWS Lambda上使用无界面的无头浏览器。 我想弄清楚如何分页内容,但我是新的节点和asynchronous/等待。 这是我的代码: const Chromeless = require('chromeless').default async function run() { const chromeless = new Chromeless({}) var results = []; const instance = await chromeless .goto('https://www.privacyshield.gov/list') for (i = 0; i < 3; i++) { console.log('in for'); instance .html() .click('a.btn-navigate:contains("Next Results")') .wait(3000) results.push(html) } await chromeless.end() } run().catch(console.error.bind(console)) 但我得到的错误: TypeError: Cannot read property 'html' […]

Cassandra手册分页:将pageState公开给客户端(在nodeJS中)

将pageState公开给客户端是否安全? 它是链接到原始查询,还是我可能暴露其他数据? 在我目前的实现中,客户端可以发送任何东西作为pageState。 长话短说:我正在NodeJ上构buildREST api,并从Cassandra集群中获取我的数据。 由于查询有相当大的结果,我需要做一些分页。 我得到了手动分页工作,但在我目前的实现中,我发送pageState到客户端,并将其发送回来,以获得下一批结果。 if(req.query.page) { options.pageState = new Buffer(req.query.page,'hex'); }; client.eachRow(query, [], options, function (n, row) { arr.push(row); }, function (err, result) { res.send({ values: arr, next: result.pageState }); }); 另一个想法是将其保存在某种caching中,并向客户端发送一个id。 我会发送该服务器和客户端之间的id,并且pageState不能被修改。 只是想知道这是开销,还是实际需要。 谢谢。

为一个排名algorithm分页mongoosemapReduce

我正在使用MongoDB mapReduce编码一个排名饲料algorithm,它几乎可以工作,但最新的实施是分页。 地图减less支持结果的限制,但我怎么能实现偏移(跳过),例如根据结果的最新查看_ID,知道我正在使用mongoose? 这是我写的程序: o = {}; o.map = function() { //log10(likes+comments) / elapsed hours from the post creation emit(Math.log(this.likes + this.comments + 1) / Math.LN10 / Math.abs((now – this.createdAt) / 6e7 + 1), this); }; o.reduce = function(key, values) { //sort the values, when they have the same score values.sort(function(a, b) { a.createdAt – […]

节点js mongoose填充限制

我有两个架构说城市和博客。 我想创build一个分页的博客页面。 所以我正在参考城市名称填写博客。 说如果我没有一个城市的博客,那么它不应该返回。 这是我的查询获取博客。 City.find().skip(req.params.pageIndex*2).limit(2).sort('-created').populate('articles').exec(function(err, cities) { res.jsonp(cities) } 如果我使用上面的查询。 我也没有博客的城市。 所以在视图中会产生一个空行。 我不希望这样的事情发生。 如何限制填充的字段,不返回没有博客的城市。 有什么build议么?

如何在电报中使用内联键盘创build分页

我正在创build一个Telegram机器人Node.js,我正在使用node-telegram-bot-api模块。 我目前的问题是: 使用内联键盘创build分页。 在这里的文档中,有一个我需要的有趣的例子。 对于外观,我必须使用方法editMessageText但更新内联键盘我需要传递参数inline_message_id 。 不幸的是,我不明白该怎么做。 我将非常感谢任何示例更新内联键盘,以及如何在这个例子中释放。

续集分页

在我的nodejs web应用程序上使用sequelize ,我想查询使用分页(按date)的post。 阅读sequelize文档 ,他们提供使用offset和limit 。 由于我想显示post从新到旧,我需要考虑它们创build的date。 例如,如果我将第一个查询限制为10页,并且在执行第二个查询之前创build了一个新的post,则偏移量为10的下一个查询将导致来自最后一个查询的重复post。 我应该如何实现分页,以便支持新条目?

分页与Aerospike Nodejs客户端

我有服务器安装与nodejs和Aerospike。 我想实现列出所有在aerospike数据库上的数据的分页。 Aerospike似乎并不支持像limit , orderBy或skip sql查询参数。 使用LList部分解决了这个问题,因为数据默认按键sorting。 也可以使用Aerospike Lua List,我们可以部分实现UDF来使用list.take(number of elements from start) 。 然而,随着时间的推移集合将会变得非常大,OrderBy和Skip变得非常重要,不能通过UDF过滤来有效地实现。 任何build议如何处理这个?