From 606a507fff5fc179764b8a0f5d26bc33334ebd86 Mon Sep 17 00:00:00 2001 From: José Mota Date: Mon, 22 Oct 2012 12:20:29 +0100 Subject: Remove UFZvalidator post and convert other two to markdown. --- ...05-rails-3-has_many-through-checkboxes.markdown | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 _posts/2010-11-05-rails-3-has_many-through-checkboxes.markdown (limited to '_posts/2010-11-05-rails-3-has_many-through-checkboxes.markdown') diff --git a/_posts/2010-11-05-rails-3-has_many-through-checkboxes.markdown b/_posts/2010-11-05-rails-3-has_many-through-checkboxes.markdown new file mode 100644 index 0000000..dd00f6b --- /dev/null +++ b/_posts/2010-11-05-rails-3-has_many-through-checkboxes.markdown @@ -0,0 +1,45 @@ +--- +layout: post +title: ! "Rails 3 has_many :through checkboxes" +tags: [ development ] +status: publish +type: post +published: true +--- + +On Twitter I wrote: + +> Rails does it for you, just add sheet_ids[] to the form with the checkboxes and +> it's done! will blog. + +Being a music teacher, my fiance needed to keep record of tests her students +perform. Also, each test has several sheets that need mentoring and +monitorization through several parameters. I decided to help and reentered the +Rails world, and since I have found no answer on this topic, I decided to write +it myself. + +This situation is a perfect model for using the so well known HABTM checkboxes. + +### A closer look at the problem + +#### Models + + + +A pretty basic setup. The venues (the students' tests) include several +sheets for them to study and for the teacher to evaluate, +through exhibitions that have several criteria. + +#### View + + + +I simplified the form just so you see what's at stake. The same principle of +the HABTM checkboxes applies to a has_many :through association. Instead of new +entries in a venues_sheets table, new Exhibitions are created with the +respective foreign ids in them. + +The controller needs no mention because it stays the same. It just saves / +updates the model. This is why I love Rails: the hard work is done: you just +need to focus on what matters. -- cgit v1.2.3-54-g00ecf