我有一个新闻网站与一些类别(商业,娱乐,体育等),并在头版,我想显示一个流行的文章从所有的文章在数据库中。
为了做到这一点,我必须知道哪一篇文章是流行的还是最多的,所以我需要对每一篇文章进行视图(访问)计数。
当单击一篇文章时,我通过调用带有其id的api请求来获取文章的数据,这是否意味着我所要做的就是计算每个id的api调用数?
我在客户端使用react和redux,在服务器中使用express,在数据库中使用postgresql,在数据库中使用knex和书架。这是我的代码,用来获取一篇特快专递文章:
router.get('/:id', (req, res) => {
Article.query({
where: {id: req.params.id}
}).fetch().then(article => {
res.json(article)
})
})如何向其中添加视图或请求计数?或者其他方法?
发布于 2016-09-04 05:52:03
您可以依赖knex查询生成器,因为Book大陆架使用它:
router.get('/:id', (req, res) => {
Article.query({
where: {id: req.params.id}
}).fetch().then(article => {
res.json(article)
}).then(ret => {
return knex.raw("update articleview set artcount = artcount + 1 where article_id = :id",{id:req.params.id}))
})
})您所需要的只是在路由器上要求()构建器,就像您需要模型一样。
书架文档只是对查询生成器进行处理,但您所需要的只是公开模型(即导出模型)或通过书架映射程序访问模型的方式。
此外,如果使用的是knex迁移,则可以要求knexfile.js配置文件。
https://stackoverflow.com/questions/39304333
复制相似问题