title: BadMethodCallException in Builder.php: Call to undefined method Laravel 5.0
body: <p>As the title says I'm getting an error in Laravel 5.0 whilst trying to upgrade a Laravel 4.2 application.</p>
  
  <p>The exact error message is: <strong>Call to undefined method Illuminate\Database\Query\Builder::orders()</strong></p>
  
  <p>I get the error when I try to fetch an authenticated users orders from a controller with the following line:</p>
  
  <pre><code>$this-&gt;user-&gt;orders()-&gt;orderBy('created_at', 'desc')-&gt;get()
  </code></pre>
  
  <p>A parent class sets <code>$this-&gt;user</code> as:</p>
  
  <pre><code>$this-&gt;user = Auth::user();
  </code></pre>
  
  <p>The user models relationship to orders is:</p>
  
  <pre><code>public function orders()
  {
      return $this-&gt;hasMany('App\Models\Order');
  }
  </code></pre>
  
  <p>To confuse me even more <code>$this-&gt;user-&gt;orders()</code> returns the error I'm experiencing where as <code>User::whereId($this-&gt;user-&gt;id)-&gt;first()-&gt;orders()</code> returns the orders I was expecting.</p>
  
  <p>When I dump both <code>$this-&gt;user-&gt;orders()</code> and <code>User::whereId($this-&gt;user-&gt;id)-&gt;first()-&gt;orders()</code> I get exactly the same output on screen.</p>
  
  <p>Can anyone explain this and possibly point me towards the correct way to do this as my solution feels hacky and I'm sure there is a much cleaner way to accomplish what I'm trying to do.</p>
  
  <p>Thanks</p>