title: Eloquent model event are saved and created both called when create is used?
body: <p>In regards to using Eloquent model events, I was wondering how the model events respond to the method calls, if there's any overlap with particular events (<em>common</em> events) and if there are, how to approach writing code for such events?</p>
  
  <p>For example, if I have a model for which I call <code>create()</code> on, i.e. <code>Model::create($array)</code> as I understand, behind the scenes, when I call <code>create()</code> the <code>save()</code> method is called <a href="https://github.com/laravel/framework/blob/5.2/src/Illuminate/Database/Eloquent/Model.php#L567" rel="nofollow">as shown in the docs</a>:</p>
  
  <pre><code>/**
   * Save a new model and return the instance.
   *
   * @param  array  $attributes
   * @return static
   */
  public static function create(array $attributes = [])
  {
      $model = new static($attributes);
      $model-&gt;save();
      return $model;
  }
  </code></pre>
  
  <p>So keeping this in mind, if I wanted <strong>the same behaviour</strong> for the <a href="https://github.com/laravel/framework/blob/5.2/src/Illuminate/Database/Eloquent/Model.php#L1178" rel="nofollow"><code>saved()</code></a> and <a href="https://github.com/laravel/framework/blob/5.2/src/Illuminate/Database/Eloquent/Model.php#L1226" rel="nofollow"><code>created()</code></a> event, would I simply created an event for the <code>saved()</code> event and not need to worry about the <code>created()</code> event as the <code>create()</code> method is a kind of a wrapper for the <code>save()</code> method (as shown above). So I could do this:</p>
  
  <pre><code>public static function boot()
  {
      parent::boot();
  
      // covers created and saved events, as create() method triggers save()
      static::saved(function($model) {
          // do xyz
      });
  }
  </code></pre>
  
  <p>Or would I need to create two separate methods to listen for both events? Like this:</p>
  
  <pre><code>public static function boot()
  {
      parent::boot();
  
      static::created(function($model) {
          // do xyz
      });
  
      static::saved(function($model) {
          // do xyz
      });
  }
  </code></pre>
  
  <p>So just to repeat the questions I stated at the beginning:</p>
  
  <ul>
  <li>How do model events respond to the method calls</li>
  <li>Is there any overlap with particular events (<em>common</em> events, as described above)</li>
  <li>If there are, how to practically approach writing code for such events</li>
  </ul>
  
  <p>Any guidance on understanding this process would be appreciated, thanks!</p>