Checkboxes in Forms & Arrays

Fairly simple question that I’d thouhgt I’d seen answered before, but
can’t seem to find now.

A user has_many foos. I want to present a user with a list of possible
foos and have them choose which ones he wants to add to his foo array.
I’m using a form that has a checkbox for each foo. I get the array
foo_ids back from params no problem and then use user.foos.replace() to
update the array.

But then I make foo acts_as_taggable. I want to show the user only a
list of foos tagged with bar in the form. I’m looking to update only
part of the array.

I thought I’d read (somewhere) that params would contain a hash that
would have each foo_id and a value of the check (true/false) so that I
could use foos.replace to update the user’s foos. But instead,
params[foo_id] is an array of only the checked items from the form. So
I’m missing the foos the user has deselected.

Is there some way to configure the form such that I get the ids of the
unchecked items? Did I miss something simple?

thx,
–dwf