title: Laravel Eloquent - include related columns in query results
body: <p><strong>Objective:</strong>
  Return a composite response from my query, containing columns from both related models using Eloquent so that I can use Form::model to restore field values for User values AND Addresses values in my view. I want all the data in a single object and I don't want to use compact or otherwise manipulate the data if I don't have to.</p>
  
  <p><strong>Tables:</strong> </p>
  
  <pre><code>users (id, userWorkAddressID, ...)
  
  addresses (ID, ...)
  </code></pre>
  
  <p><strong>Models</strong></p>
  
  <p><strong>User</strong></p>
  
  <pre><code>public function address()
  {
      return $this-&gt;hasOne('Address', 'ID', 'userWorkAddressID');
  }
  </code></pre>
  
  <p><strong>Address</strong></p>
  
  <pre><code>public function user()
  {
      return $this-&gt;belongsTo('User', 'id', 'userWorkAddressID');
  }
  </code></pre>
  
  <p><strong>Things I've tried</strong></p>
  
  <pre><code>$user = User::find($id);
  </code></pre>
  
  <p>This just returns user data - no address data</p>
  
  <pre><code>$user = User::find($id)-&gt;address
  </code></pre>
  
  <p>This just returns the address for the user, but no user data</p>
  
  <pre><code>$user = User::with('address')-&gt;find($id);
  </code></pre>
  
  <p>This returns the user data, no address data</p>
  
  <pre><code>$user = User::with(array('address' =&gt; function($query){
      $query-&gt;addSelect(array('id', 'addressLine1'));
  }))-&gt;find($id);
  </code></pre>
  
  <p>This also returns only the user data, no address data</p>
  
  <p>I could just use Fluent, but do I have to?</p>
  
  <p>How can I use Eloquent to join those two tables and return a single object consisting of the fields I represent in my view?</p>