title: Rails has_one :through association
body: <p>Rails has a <code>has_one :through</code> association that helps set up a one-to-one association with a third model by going through a second model. What is the real use of that besides making a shortcut association, that would otherwise be an extra step away.</p>
  
  <p>Taking this example from the Rails <a href="http://guides.rubyonrails.org/association_basics.html" rel="noreferrer">guide</a>:</p>
  
  <pre><code>class Supplier &lt; ActiveRecord::Base
    has_one :account
    has_one :account_history, :through =&gt; :account
  end
  
  class Account &lt; ActiveRecord::Base
    belongs_to :supplier
    has_one :account_history
  end
  
  class AccountHistory &lt; ActiveRecord::Base
    belongs_to :account
  end
  </code></pre>
  
  <p>might allow us to do something like:</p>
  
  <pre><code>supplier.account_history
  </code></pre>
  
  <p>which would otherwise be reached as:</p>
  
  <pre><code>supplier.account.history
  </code></pre>
  
  <p>If it's only for simpler access then technically there could be a one-to-one association that connects a model with some nth model going through n-1 models for easier access. Is there anything else to it that I am missing besides the shortcut? </p>