title: Access model in form request when field has same name as entity
body: <p>I'm using route model binding in a FormRequest class with unique validation rules</p>
  
  <pre><code>class ReasonUpdateRequest extends FormRequest
  {
  
  
      public function rules()
      {
  
          return [
              'reason' =&gt; 'string|max:255|unique:reasons,reason,' . $this-&gt;reason-&gt;getKey(),
          ];
      }
  }
  </code></pre>
  
  <p>And here's the controller method</p>
  
  <pre><code>public function anyReasonUpdate(ReasonUpdateRequest $request, Reason $reason)
  {
      //
  }
  </code></pre>
  
  <p>I've always been able to access the model that is being bound by doing <code>$this-&gt;entityName</code>.</p>
  
  <p>The problem is that I can't do <code>$this-&gt;reason-&gt;getKey()</code> to access the id of the reason entity because Reason has a field named <code>reason</code>. Now instead of <code>$this-&gt;reason</code> pointing to the model, it points to the value in that field. I know that a fix could be to rename the field but I'm not in a position to easily do that. </p>
  
  <p>I can get it to work by doing <code>$reasonId = $this-&gt;segment(4);</code> but this couples it to the format of the url. </p>
  
  <p>How can I access the Reason entity from within my form request object in a more generic way?</p>