Writing data to join table?

I have a team-table and model, and a user-tabel and model, and a
teams_userstable for the join.
I select a few users, collect them in a group, and want to save them as
a team.
So I suppose I save one team-record, and several join-table-records,
with the same team_id, and different user_ids.

I've used the depot-application from Agile as a starting point,

def save_order
    @group = find_group
    @team = Team.new(params[:team])
    @team.add_users_from_group(@group)
    if @team.save
      session[:group] = nil
      redirect_to_index("Bewaard")
    else
      render :action => :checkout
    end
   end

In Team

def add_users_from_group(group)
    group.items.each do |item|
      li = TeamsUsers.from_group_item(item)
      teams_users << li
    end
  end

In TeamUsers

def self.from_group_item(group_item)
li = self.new
li.team_id = group_item.id
li.user_id = group_item.id
li
end

The bit were I get an error is the line team_users << li in the
Team-bit, and I don't know why.

I know this is a newbie question, (I am one, so...) but the point is
that it seems difficult to find clear info about that.
Could anybody please help me out? Thanks in advance.

Rudy wrote:

I have a team-table and model, and a user-tabel and model, and a
teams_users table for the join.

That's not technically a join, it's a many-to-many. (Technically two joins!:wink:

Where are your has_and_belongs_to_many directives?

     teams_users << li

The bit were I get an error is the line team_users << li in the
Team-bit, and I don't know why.

What error message? Always provide its main line, and a _tiny_ bit of its stack trace.

(Don't provide the entire stack trace, because it will provide false hits when anyone searches these archives for the modules it references..!)

Thanks for answering.
My has_and_belong_to many 's are in the Team and User models. Ther
error message is a "undefined local variable or method team_users" .
Could you suggest me a place or a simple example of how to get those
data in the database with a join. All the examples I find are always
about lookups, not about writing them. Probably it is so obvious that
nobody writes about it, but I'm missing it one way or the other.