Lo habitual al definir una relación has_and_belongs_to_many que vamos a gestionar desde la propia aplicación via web es que usemos checkbox para marcar los miembros de la relación. Un ejemplo típico de esto son usuarios que pertenecen a un grupo.
Tendremos una vista en la cual mostramos los checks con su label correpondiente:
<%if @groups.any?%>
<ul>
<%for group in @groups do%>
<li>
<%input_id = "user_group_ids_#{group.id}"%>
<%=check_box_tag "user[group_ids][]", group.id, @user.group_ids.include?(group.id), :id => input_id%>
<%=label_tag input_id, group.name%>
</li>
<%end%>
</ul>
<%end%>
