I was thinking shouldn't multiple collection_select automatically update habtm relations when you update_attributes?
In order to get multiple collection_select to work I use:
collection_select(:user, :group_ids, @groups, :id, :name,{},{:multiple=>,:name=>'group[id][]'})
This will select the groups a user is a member of, but in order to get them updated when a change is made, what's needed is the following:
collection_select(:user, :group_ids, Group.find(:all), :id, :name,{},{:multiple=>,:name=>'user[group_ids][]'})
Not this is something that should go in the rails recipes book! Or somewhere in the documentation. I've created a documentation patch for form_helper.rb
It would rock even harder if the created_on stuff held for the habtm join table as well ...