Piku’s Blog

January 21, 2008

Rails with_scope tip

Filed under: Programming, Ruby on Rails — Tags: , , , — Mihai @ 10:03 pm

While searching some documentation about has_many :through I’ve found Josh Susser’s blog called (very imaginatively) “has_many :through” and the article about Magic join model creation in Rails Edge.

It is about using << on has_many through associations, before that you could use them only on habtm.

The article is quite old, 19 August 2006, and Rails has changed a bit since then, with_scope is now protected so now instead of

Contribution.with_scope(:create => join_attrs) { self << book }

use

Contribution.send(:with_scope, :create => join_attrs) { self << book }

For more information about many-to-many associations also see Many-to-many Dance-off in which habtm and has_many through is compared and Rails documentation.

Blog at WordPress.com.