Can't find my join table

11 views
Skip to first unread message

Timen E.

unread,
Jun 14, 2012, 7:40:28 AM6/14/12
to rubyonra...@googlegroups.com
Hey there,

I was following up on some tutorials about has_many(_and_belongs_to).
There it was explain that i should make a join table as such:

create_table 'cards_users', :id => false do |t|
t.column 'card_id', :integer
t.column 'user_id', :integer
end


So i did, but now i wanna add a record via my rails console (@a =
Cards_users.create :card_id => 1, :user_id => 1) but it keeps telling
me,
whatever i try with the capitals etc., that Cards_users(and all other
options) is an undefined method.

What do i do?:(

Thanks in advance

--
Posted via http://www.ruby-forum.com/.

CavalryJim

unread,
Jun 14, 2012, 8:15:27 AM6/14/12
to rubyonra...@googlegroups.com
Close. Try @a = CardUser.new
Then @a.card_id = value & @a.user_id = value

Timen E.

unread,
Jun 14, 2012, 8:23:25 AM6/14/12
to rubyonra...@googlegroups.com
Thanks alot,
in that case i'd like to ask the following question (since after some
tutorials it's still unclear to me)

I've got card_id = 1 and user_id = 1 in my DB now. In my user.rb i've
got the has_and_belongs_to_many:cards and in cards i've got
has_and_belongs_to_many:users. However, if i get all cards (@cards =
Cards.all) and loop through them i don't have a user_id in my loop.

So what i'm actually trying to ask is, how do i get all cards that
belong to user 1?

Colin Law

unread,
Jun 14, 2012, 4:52:00 PM6/14/12
to rubyonra...@googlegroups.com
If you have a User in @user then all his cards are available as @user.cards

I think it would be worth your while working through good tutorial
such as railstutorial.org which is free to use online. Then you will
learn the fundamentals of Rails.

Colin
Reply all
Reply to author
Forward
0 new messages