Forum: Ruby on Rails Questions about ActiveRecord

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
F5aa275fbe0c50b93cb35559ee4f94ec?d=identicon&s=25 Folke Will (Guest)
on 2006-02-18 20:25
Hello,

I have a few questions about data base design and integrating the design
into Rails.

I'm creating a CMS for a local sports club and want to store the clubs,
their teams and the matches in a data base.

Here is the schema I made up:
http://pastebin.com/561474

As you can see, I added home_id and guest_id to each match that link to
the competing teams. My problem is telling Rails about this kind of
relation. I want to be able to do something like this:

# This should return all matches where team.id is home_id or guest_id:
<% for match in @team.matches %>
  <%= match.home_points %>
<% end %>


Adding has_many(:matches) in team.rb and has_many(:teams) in match.rb
didn't work because there is no join table.

That's why I added another solution to the schema using a join table
(bottom of the pasted file). But that led me to another problem, I don't
know how to get the team's points using that solution. And I don't like
that solution because I'd have to check that each match has exactly two
entries in the join table, etc.

Any suggestions?

Thanks
8bb3c5e93ea6413629d0b6ef6a926acf?d=identicon&s=25 Peter Gerlmann (Guest)
on 2006-02-19 15:44
did you try using :foreign_key in belongs_to?
This topic is locked and can not be replied to.