title: Laravel Eloquent Model toJson method does not work recursively
body: <p>I have read <a href="https://laravel.com/docs/5.5/eloquent-serialization#serializing-to-json" rel="nofollow noreferrer">docs</a> that this method should be recursive but it doesnt apply to model attributes:</p>
  
  <p><strong>Table Migration</strong></p>
  
  <pre><code>Schema::create('test', function (Blueprint $table) {
  
      $table-&gt;increments('id');
      $table-&gt;string('test');
      $table-&gt;json('testJson')-&gt;nullable();
  
  });
  </code></pre>
  
  <p><strong>Execution</strong></p>
  
  <pre><code>Test::findOrFail($id)-&gt;get()-&gt;toJson();
  </code></pre>
  
  <p><strong>Response</strong></p>
  
  <pre><code>{
   id:0,
   test:'',
   testJson:'[{}]' //as string! i need array of objects.
  }
  </code></pre>