请问 “模型计数器字段” 字段应该如何理解

我们通过调用 Eloquent 模型的 count 方法来获取用户发布过的微博数,这个做法并不算是最佳实践,因为在大型应用中,为了节省服务器资源,优化数据库查询效率,常会采用的方法是在数据库中添加一个模型计数器字段,在每次对模型进行创建或删除时对该字段进行更新,而由于本书开发的应用只是小型的演示应用,因此在这里我们使用 count 方法来查询即可。

教程中提到的 在大型应用中,会为数据库添加一个模型计数器字段,如果填加了这个字段,那每次新增数据 或者删除数据是,是否要对数据库中所有的数据的该字段进行修改呢,不是很理解这里,但是又觉得在大型应用中很重要

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

比如,一个论坛页面,它显示了一个帖子列表,列表中的每个帖子还要显示回复数。
这时候,如果不用字段来存每个帖子的回复数,只能去数据库把每个帖子的回复记录count一下。
优化方法就是,用一个字段记载回复数,回帖时+1,删除时-1,修改计数时,用事务保证同步。
这样只要查询一次就可以了

5年前 评论
讨论数量: 1

比如,一个论坛页面,它显示了一个帖子列表,列表中的每个帖子还要显示回复数。
这时候,如果不用字段来存每个帖子的回复数,只能去数据库把每个帖子的回复记录count一下。
优化方法就是,用一个字段记载回复数,回帖时+1,删除时-1,修改计数时,用事务保证同步。
这样只要查询一次就可以了

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!