title: Laravel eloquent not calling the relationship (returning string)
body: <p>I have this relationship:</p>
  
  <p>A store may have many products and each products can have many effects</p>
  
  <p><code>stores</code> and <code>products</code> -> many to many relationship</p>
  
  <p><code>products</code> and <code>effects</code> -> one to many (one product can have multiple effects)</p>
  
  <p>Here are my relationships:</p>
  
  <p><strong>Store model</strong></p>
  
  <pre><code>public function products()
  {
      return $this-&gt;belongsToMany('App\Models\Product');
  }
  </code></pre>
  
  <p><strong>Product model</strong></p>
  
  <pre><code>public function stores()
  {
      return $this-&gt;belongsToMany('App\Models\Store');
  }
  
  public function effects()
  {
      return $this-&gt;hasMany('App\Models\Effect');
  }
  </code></pre>
  
  <p><strong>Effect model</strong></p>
  
  <pre><code>public function products()
  {
      return $this-&gt;belongsTo('App\Models\Product');
  }
  </code></pre>
  
  <p>Now, I can access the relationship with products ok, but when I access the effects relationships:</p>
  
  <pre><code>    $store = Store::where('slug', 'cantina')-&gt;first();
      dd($store-&gt;products-&gt;first()-&gt;effects);
  </code></pre>
  
  <p>The dd returns a string with the name of the relationship:</p>
  
  <pre><code>"effects"
  </code></pre>
  
  <p>I never seen this "error" before, anyone knows why the relationship are returning a string instead of the eloquent?</p>
  
  <p><strong>[Edit]</strong></p>
  
  <p>If I digit anything in the relationship call, they output what I digited:</p>
  
  <pre><code>dd($store-&gt;products-&gt;first()-&gt;effects);
  //Output:
  "effects"
  </code></pre>
  
  <p>Another example:</p>
  
  <pre><code>dd($store-&gt;products-&gt;first()-&gt;foobar);
  //Output:
  "foobar"
  </code></pre>