title: Rails STI vs Polymorphic vs Neither
body: <p>I have a Users class in my rails app.  I need two types of users, 1) Players, 2) Managers.  Users will all log in using Devise and have same basic user fields.  I will have a League model.  What is the best way to model this?  STI doesn't seem quite right but not sure if Polymorphic works either since if both Manager &lt; User &amp;&amp; Player &lt; User.  The only real role a manager will have will be admin roles such as adding/removing players from leagues, setting up schedules etc. </p>
  
  <pre><code>class League &lt; ActiveRecord::Base
    has_one :manager
    has_many :players
  
  end
  
  class Match &lt; ActiveRecord::Base
    has_and_belongs_to_many :players
    belongs_to :league
  end
  
  class User &lt; ActiveRecord::Base
    has_and_belongs_to_many :matches
    has_and_belongs_to_many :leagues
  end
  
  class Player &lt; User
    has_and_belongs_to_many :leagues
    has_and_belongs_to_many :matches
  end
  
  class Manager &lt; User
    has_many :leagues
  end
  </code></pre>
  
  <p>Any suggestions for the best way to set this up are greatly appreciated!
  Using STI for players ActiveRecord is looking for Player table for the join but it doesn't exist.</p>