Legacy join table with extra attributes and Rails 2.0

I am a fresh RoR developer and I am facing difficulty in getting a
legacy join table (with extra attributes) to work with Rails 2.0.
Please excuse
me in case this is not the right forum for discussing this matter.

My rails application works well with Rails 1.2.3. Following is the
set-
up:

class Article
has_and_belongs_to_many :users
end

class User
has_and_belongs_to_many :articles
end

Legacy join table "articles_users" has the exepcted columns: (1)
article_id (2) user_id, and an extra third column say, (3) more_info

Following are my observations:

(1) In my application, I use "push_with_attributes" method to save
records to the legacy join table. My understanding is that support for
"push_with_attributes" in particular, and extra attrbutes in habtm
join tables, in general, is not present in Rails 2.0

(2) I tried to modify my application using the Rails recommended
approach of using "has_many :through" associations to realize join
table with extra attributes. However, in this case Rails 2.0 appears
to complain that the join table does not have a primary id column.

Is there a way to resolve this issue in Rails 2.0 framework without
having to change the database table? Please let me know if I am
missing something obvious.

As far as I know, you just have to start using has_many :through and refactor your code. If I ever had a situation where I had to do this, I would turn push_with_attributes into a plugin by extracting it from the Rails 1.2.3 tag. Since I haven’t needed it yet, I haven’t done it. It most likely isn’t that hard to do but I haven’t looked.