`
CaiDeHen
  • 浏览: 96935 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

#23 Counter Cache Column

阅读更多
If you need to display the record count for a has_many association, you can improve performance by caching that number in a column.
# migrations/006_add_tasks_count.rb
def self.up
  add_column :projects, :tasks_count, :integer, :default => 0

  Project.reset_column_information
  Project.find(:all).each do |p|
    Project.update_counters p.id, :tasks_count => p.tasks.length
  end
end

def self.down
  remove_column :projects, :tasks_count
end

# models/task.rb
belongs_to :project, :counter_cache => true
<!-- projects/index.rhtml -->
<%= pluralize project.tasks.size, 'task' %>
分享到:
评论

相关推荐

    Laravel开发-counter-cache

    在Laravel框架中,Counter Cache是一种优化技巧,用于提高数据读取效率,特别是涉及到频繁查询某个模型关联数量的情况。这个概念源于数据库的行级缓存,它可以存储与模型关联的数据计数,避免每次查询时都要执行计算...

    java非堆CodeCache详解

    ### Java非堆CodeCache详解 #### 一、Java内存模型概览 Java应用程序运行时的内存主要分为两大部分:堆(Heap)与非堆(Non-Heap)。其中,堆内存用于存储对象实例以及数组等数据;而非堆内存则用于存储JVM运行时...

    Laravel开发-lara-counter-cache

    在Laravel框架中,"lara-counter-cache"通常是指一种优化数据库查询效率的策略,它通过缓存模型关联的计数来减少对数据库的频繁访问。这个项目可能是一个开源库或者一个实现,用于帮助开发者更高效地处理如文章评论...

    Laravel开发-lara-counter-cache .zip.zip

    在Laravel框架中,"lara-counter-cache"通常指的是一个扩展包或插件,用于实现数据库计数器缓存的功能。这个概念主要涉及到数据库优化、缓存管理和Eloquent ORM(对象关系映射)的使用。在大型应用中,频繁地查询...

    Laravel开发-laravel-delayed-counter-cache

    1. **安装依赖**:如果`laravel-delayed-counter-cache`是一个外部库,我们需要通过Composer将其添加到项目中,执行`composer require vendor/package`命令。 2. **配置**:在`config/app.php`或`config/cache.php`...

    RRC接入过程拆解及Counter分析

    ### RRC接入过程拆解及Counter分析:3G RRC协议参数详解 #### RRC定义与功能 无线资源控制协议(RRC,Radio Resource Control)是UTRAN(通用陆地无线接入网)中的一项核心协议,负责处理UE(用户设备)与网络之间...

    JAVA小程序counter计数器

    ### JAVA小程序counter计数器知识点解析 #### 一、程序概述 本JAVA小程序是一个简单的计数器实现,主要目的是为了帮助JAVA编程初学者理解和掌握基本的类与对象的概念,以及如何在程序中进行数值的增减操作。通过该...

    Advanced FPS Counter v1.5.3

    Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced FPS Counter v1.5.3Advanced ...

    logisim全相联cache设计.txt

    根据提供的文件信息,我们可以推断出这是一份用于Logisim软件中的项目文件,主要涉及构建全相联缓存(cache)的设计。Logisim是一款强大的、免费的电路模拟软件,常被用来教学数字逻辑和计算机组织等课程。下面将详细...

    SourceCounter代码统计(含注册方法)

    "SourceCounter代码统计工具"是一款强大的软件,专为开发者设计,用于分析和统计各种编程语言的源代码。这款工具能够详尽地统计不同类型的代码文件,包括但不限于C++、VB.Net、VB、C#、JAVA、Delphi、ASP.Net、ASP、...

    COUNTER

    在IT行业中,"COUNTER"这个词可能与字体设计和排版技术有关。在字体设计中,"Counter"一词指的是封闭区域内留白的部分,比如字母 "o" 中间的空洞或者数字 "4" 下方的开口空间。这些内部的空白区域对于字体的可读性和...

    custom_counter_cache:支持条件和多种模型的自定义counter_cache功能

    gem 'custom_counter_cache' 示例 带计数器缓存的类 这是将用于计算计数器缓存的值的块。 其他模型将通过after_save或after_destroy回调通过它们的关联来调用它。 include CustomCounterCache :: Model define_...

    Source Counter【代码统计工具】

    "Source Counter【代码统计工具】"是一款专门设计用于统计代码行数、注释以及其它相关指标的软件。这款工具在IT行业中尤其对于项目管理和软件开发团队具有很高的实用价值,因为它可以帮助量化开发工作量,评估项目的...

    JAVA编程计数器类Counter

    ### JAVA编程计数器类Counter知识点解析 #### 一、计数器类Counter概述 在Java编程中,计数器是一种常见的数据结构或组件,用于记录某个动作发生的次数。本篇将详细介绍一个简单的计数器类`Counter`,该类通过三个...

    SourceCounter

    **源码计数器——SourceCounter深度解析** SourceCounter是一款专为程序员和软件开发者设计的高效代码统计工具。它能够帮助用户快速、准确地获取应用程序代码的各类统计信息,包括总行数、文件数量以及资源文件的...

    SourceCounter代码统计工具

    **源码计数工具——SourceCounter深度解析** SourceCounter是一款高效实用的代码统计工具,专为程序员和软件开发团队设计,旨在提供精确的代码量分析。这款工具的强大之处在于其能够详细统计各种类型的代码行数,...

    前端项目-Counter-Up.zip

    **前端项目-Counter-Up简介** 前端开发中,我们经常需要展示动态变化的计数效果,例如网站访问量、用户注册数等。Counter-Up是一个专为此目的设计的轻量级jQuery插件,它使得数字在页面加载后从0平滑地递增到预设的...

    Line_Counter_2008

    《Line_Counter_2008:代码行统计利器在.NET平台的应用》 在软件开发过程中,代码行数(LOC,Lines of Code)是衡量项目规模、复杂度和工作量的重要指标之一。Line_Counter_2008,正如其名,是一款专为开发者设计的...

    SourceCounter.zip

    《SourceCounter:一款实用的代码统计工具》 在软件开发过程中,代码量的统计是一项重要的工作,它可以帮助我们了解项目的规模,评估开发进度,以及进行团队间的任务分配。SourceCounter便是一款专为此目的设计的...

    rocksdb-counter-microservice-sample:计数器微服务示例(使用 RocksDB RocksJava)

    构建和执行 # Start build$&gt; ./gradlew shadow# Run application$&gt; java -jar build/libs/RocksDB-Microservice-Counter-1.0-all.jar /tmp/dbLocation微服务现已可用,监听localhost:4567REST接口启动服务后,三个...

Global site tag (gtag.js) - Google Analytics