Hello all, I''m trying to create a HABTM checkbox action that adds ''users'' to a ''project''. I have the following laid out. --------------------- TABLES --------------------- create_table "assignments", :id => false, :force => true do |t| t.column "project_id", :integer, :default => 0, :null => false t.column "user_id", :integer, :default => 0, :null => false end create_table "projects", :force => true do |t| t.column "title", :string t.column "description", :text t.column "start_date", :datetime t.column "end_date", :datetime end create_table "users", :force => true do |t| t.column "first_name", :string t.column "last_name", :string end --------------------- MODELS --------------------- # Assignment class Assignment < ActiveRecord::Base belongs_to :project belongs_to :user end #Project class Project < ActiveRecord::Base has_many :assignments has_many :users, :through => :assignments end # User class User < ActiveRecord::Base has_many :assignments has_many :projects, :through => :assignments end So at this point I created dummy data for my "assignment" table in the following: # Assignment data project_id user_id 1 1 1 2 1 3 2 1 3 1 So as you can see project_id 1 contains 3 unique users to the project and they are user_id 1, 2, 3. Which I think is how i want the model to work. I think!? So when I go to my projects controller I have the standard scaffold generated code for update. #projects_controller.rb def update @project = Project.find(params[:id]) if @project.update_attributes(params[:project]) flash[:notice] = ''Project was successfully updated.'' redirect_to :action => ''show'', :id => @project else render :action => ''edit'' end end when I go to the projects view/_form.rhtml I have this code to pull in the Users associated with a particular project. # projects/_form.html <% User.find(:all, :order => "last_name ASC").each do |u| %> <%= check_box_tag ''project[user_id][]'', u.id, @project.users.include?(u) %> <%= u.first_name %> <%= u.last_name %><br> <% end %> This works well because it will pull in all users from the users table and it will check off the checkbox for all the ones that are associated with the project. --------------------- THE ISSUE --------------------- The issue I''m running into is how to "add/update/remove" users from a project. I think it might be my check box tag. # projects/_form.html <%= check_box_tag ''project[user_id][]'', u.id, @project.users.include?(u) %> <%= u.first_name %> <%= u.last_name %><br> Does this make sense... # project[user_id][] <%= check_box_tag project[user_id][]''.... When I try to make any updates to a projects assigned user list (in this example I''m removing user_id 3 from the project) I get the following error --------------------------------------------------------------- NoMethodError in ProjectsController#update --------------------------------------------------------------- undefined method ''user_id='' for #<Project:0x224b564> --------------------------------------------------------------- Request --------------------------------------------------------------- Parameters: {"commit"=>"Edit", "project"=>{"end_date(3i)"=>"25", "start_date(1i)"=>"2006", "title"=>"Test Project", "start_date(2i)"=>"12", "client_id"=>"3", "start_date(3i)"=>"23", "description"=>"Lore ver sisit nit ut loreet .", "user_id"=>["1","2"], "end_date(1i)"=>"2006", "end_date(2i)"=>"12"}, "id"=>"2"} ---------------------------------------------- Final thought / question ---------------------------------------------- What''s interesting is the ''updated'' values are in the parameters ("user_id"=>["1","2"]) but they are not updating the join table of ''assignments''. I think I might be relying on ActiveRecords Magic too much in hoping it would update the ''assignments'' table. Does anyone know what I can do to remedy the problem. Should I rethink my set-up or is it the check_box_tags value "project[user_id][]" that is the problem? Any thoughts would be helpful. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---