Skip to content

Instantly share code, notes, and snippets.

View cheshire137's full-sized avatar

Sarah Vessels cheshire137

View GitHub Profile
@mildmojo
mildmojo / active_record_left_join.rb
Created November 16, 2012 22:27
Adding #left_joins to ActiveRecord::Base
# Adds left joins to ActiveRecord.
#
# = Description
#
# This patch adds a #left_joins method to ActiveRecord models and relations. It
# works like #joins, but performs a LEFT JOIN instead of an INNER JOIN.
#
# = A warning about +count+
#
# When using with #count, ActiveRecord 3.2.8 is hard-coded to act as if
@mildmojo
mildmojo / left_join_arel_example.rb
Last active April 5, 2024 16:00
LEFT JOIN in ARel for ActiveRecord in Ruby on Rails
# Here's a contrived example of a LEFT JOIN using ARel. This is an example of
# the mechanics, not a real-world use case.
# NOTE: In the gist comments, @ozydingo linked their general-purpose ActiveRecord
# extension that works for any named association. That's what I really wanted!
# Go use that! Go: https://gist.github.com/ozydingo/70de96ad57ab69003446
# == DEFINITIONS
# - A Taxi is a car for hire. A taxi has_many :passengers.
# - A Passenger records one person riding in one taxi one time. It belongs_to :taxi.
@msabramo
msabramo / git_prompt_info.zsh
Created April 11, 2012 00:07
The slowness of my zsh prompt when in a git-svn managed directory was killing me. I improved it by removing the git status stuff that slows it down...
function git_prompt_info() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$ZSH_THEME_GIT_PROMPT_SUFFIX"
}
@gaurav
gaurav / gist:41182
Created December 29, 2008 05:03
A quick command to list all the files modified by an author in a repository
git log --name-status --pretty=format:'' --author=authorname | sort | uniq