マッスル・メモリー

筋肉エンジニアのブログ

ruby

【Rails】 count, length, sizeの違いと使い分け案

count キャッシュしない。 毎回sqlのcountを使ってカウントする。 最新の件数を取得できる。 area = Area.first # 毎回sqlが発行される area.sub_areas.count # (0.4ms) SELECT COUNT(*) FROM `sub_areas` WHERE `sub_areas`.`area_id` = 1 # => 1 area.sub_…

【Rails】 N + 1問題の解決法、preload, eager_load, includes, joinsの使い分け案

N+1問題とは ループ処理の中でその都度クエリを発行してしまいパフォーマンスが低下してしまうこと。 解決策の1つは、Eager Loading(積極的な先読み)を使用すること。 Eager Loadingでは、関連するデータを事前にまとめてロードすることで、N回のクエリを…

railsでsvgにスタイルを当てる方法

svgファイルを読み込むhelperを作成する helperをviewに記述する cssを当てる svgファイルを読み込むhelperを作成する # app/helpers/application_helper.rb def embedded_svg(filename, options={}) file = File.read(Rails.root.join('app', 'assets', 'im…

Google Analytics APIを使用しページごとのセッション数を取得

この記事に書かれていること 背景 Google Analyticsでできること。 実装 準備 全体像 コード解説 最後に この記事に書かれていること Google Analyticsでできることの軽い説明 Google Analytics APIを使用し、ページごとのセッション数を取得したコードにつ…

ActiveRecordってなんぞ?

ActiveRecordとは ActiveRecordとは、ウェブアプリケーションフレームワークであるRuby on railsのO/Rマッピングを担うライブラリ。 https://magazine.rubyist.net/articles/0004/0004-RLR.html で、そのO/Rマッピング(Object-relational mapping、オブジェ…