title: What is the best database design?
body: <p>I am only about a week into learning Rails (4) and am creating a simple app. I have four tables. </p>
  
  <p>1) Lions
  2) Panthers
  3) Trainers
  4) Toys</p>
  
  <ul>
  <li><p>A toy can belong to either a lion or a panther. A toy will only belong to one cat at a time (So it seems best to make this polymorphic. The next part is where I become unsure.)</p></li>
  <li><p>A trainer can train either a lion, a panther or both.</p></li>
  <li><p>A lion or panther can have more than one trainer.</p></li>
  </ul>
  
  <p>I made the Trainers table polymorphic, but upon seeding each trainer with first a lion then a panther, I saw that the panthers overrode the lions. It seems I would have to create another instance of each trainer to give them a second cat, which would also give that same trainer a second ID, which I don't want. Perhaps a many_to_many design between Lions/Trainers and Panthers/Trainers would be better? My questions about that are, once I make the join table for each many_to_many, when I want to list the cats that each trainer trains, will this require two loops, one through the lions_trainers and also the panthers_trainers? And Is this even the best approach? Admittedly, this would be easier if Lions and Panthers were in one table, but that is not in the assignment. Suggestions/Input appreciated :)</p>