Archive for the ‘Ruby on Rails’ Category

Quick Tip: Rails Named Bind Variables

Sometimes, Rails queries can get long and complicated. Using named bind variables is an easy way to give some context to the query and, when you need to supply the same value to multiple query conditions, can shorten the query parameters.

Read the rest of this entry »

Quick Tip: Cucumber Works-in-Progress

Cucumber has a relatively new feature that allows you to tag individual scenarios as “should pass” versus “work-in-progress”. Rake tasks are provided that run the two groups of tagged scenarios separately.

Read the rest of this entry »

Quick Tip: Rails Singularization of -ess

The Ruby on Rails built-in inflections don’t handle singularizing words like “business” or “address” correctly. Here’s a quick way to make sure it’s handled in your Rails project.

Read the rest of this entry »

Fixing Multipart Uploads in Rack for Ruby 1.9

Describes a fatal error in Rack v1.0.0 that may need to be patched until a new version is released. If you’re seeing a “invalid byte sequence in US-ASCII” error, then read on!

Read the rest of this entry »

Using Named Scopes in a Rails Plugin

I encountered a problem after extracting some common functionality into a Rails plugin that contained two named scopes. It was not returning the correct results and it took me a while to figure it out. With the help of Chris Chandler we determined the cause and a solution so that the named scopes work correctly from within a Rails plugin.

Read the rest of this entry »

Quick Tip: Override Rails Generated URLs

I explore a quick and simple way to change the default URLs generated for a Ruby on Rails resource. With this tip, there’s no need to modify the usage of URL helpers or anything else in your code. After making the change URLs for that resource will be generated as you’ve specified them.

Read the rest of this entry »

Monitoring Thin using God, with Google Apps Notifications

We’ve been using God to monitor our Thin processes on Freebootr and set it up to notify us through our Google Apps account. Thought our God config file might be useful to anyone trying to use God with Thin and Google Apps.
Thin configuration

# == God config file
# http://god.rubyforge.org/
# Authors: Gump and michael@glauche.de
#
# Config file for [...]

Read the rest of this entry »

Quick Tip: Rails 2.1 Time Zones

My last quick tip involved setting your time zone in Ubuntu Hardy, so now, how do you set your time zone in a Ruby on Rails application? Rails 2.1 makes it much easier to manage time zone settings than it was previously.
Add the following to your environment configuration file:
config/environment.rb

config.time_zone = ‘Arizona’

Replace Arizona with your own [...]

Read the rest of this entry »

Nginx 405 Not Allowed Error

405 Not Allowed
So, I got this error today and it took me a few minutes to track down why. Seems like the kind of thing that might be interesting to people. I’m using nginx on a project and this error was being thrown by nginx, not by Rails. What could be the cause?
Nginx configuration [...]

Read the rest of this entry »

Quick Tip: Form Partials

Partials are a great way to keep your view code separated logically. Prior to Rails 2.1 if you wanted to reuse a form partial in, for example, a new and edit view, then you needed to pass the form into the partial somehow.
Given the following form partial:
views/users/_form.html.erb

<div>
<%= form.label :name -%>
<%= [...]

Read the rest of this entry »