title: Laravel - firstOrCreate not persisting all fields to the DB
body: <p>I am using the firsOrCreate method to persist records if they already don't exists in the DB. This is my function:</p>
  
  <pre><code>  return ContentType::firstOrCreate(
      ['name' =&gt; $type], ['slug' =&gt; str_slug($type, '-')]
    );
  </code></pre>
  
  <p>The problem I have here is that the new record is created in the DB, but the slug field stays empty. Not sure why is that since the slug is created, because when I do </p>
  
  <pre><code>dd(str_slug($type, '-'));
  </code></pre>
  
  <p>Before the method <code>firstOrCreate()</code> I do get the slug. 
  So, why it is not persisted to the DB?</p>
  
  <p>I have set up in my model the protect guarded array so, that should not be the problem:</p>
  
  <pre><code>    protected $guarded = [
          'id'
      ];
  </code></pre>