title: Rails - how to use reload method?
body: <p><strong>Case1</strong>: Creating a new record for a model with assigning the associated object(Status object instead of Status.id) like</p>
  
  <pre><code>    visit = Visit.create(:date =&gt; Date.today, :status =&gt; Status.first)
      visit.status_id #=&gt; 1
  </code></pre>
  
  <p>After creating the record</p>
  
  <p>I'm trying to update the attribute 'status_id' (Status.id instead of Status object) but it returns the old value even calling reload after save the object. Example:</p>
  
  <pre><code>    visit.status_id = Status.last.id
      visit.save
      visit.reload
      visit.status_id #=&gt; 1
  </code></pre>
  
  <p>When I calling reload method after create it is working as expected</p>
  
  <pre><code>    visit = Visit.create(:date =&gt; Date.today, :status =&gt; Status.first)
      visit.status_id #=&gt; 1
      visit.reload
      visit.status_id = 2
      visit.save
      visit.status_id #=&gt; 2
  </code></pre>
  
  <p><strong>Case2:</strong> If I assigning the 'status_id' value instead of Status object, then no need to reload object and its working fine</p>
  
  <pre><code>    visit = Visit.create(:date =&gt; Date.today, :status_id =&gt; Status.first.id)
      visit.status_id #=&gt; 1
      visit.status_id = 2
      visit.save
      visit.status_id #=&gt; 2
  </code></pre>
  
  <p>Using the two cases above, when should I use the <code>reload</code> method? Should it be before or after <code>save</code>?</p>