title: Laravel Routing - Separate some routes
body: <p>I have a route defined as:</p>
  
  <pre><code>Route::resource('item', 'ItemController');
  </code></pre>
  
  <p>What I want to do is put some of these routes, particularly <code>edit</code> and <code>delete</code> inside a group.</p>
  
  <pre><code>Route::group(['middleware' =&gt; ['role']], function() {
  
      Route::resource('item', 'ItemController', ['only' =&gt; ['edit', 'delete']]);
  }
  </code></pre>
  
  <p>This doesn't work, though. Do I have to define each route one by one then? Or is there a better solution to this?</p>
  
  <p>EDIT:</p>
  
  <p>I'm sorry, but it seems I did not ask the question properly. So let me make some clarifications here.</p>
  
  <p>I have a basic <code>auth</code> user which can create and view <code>items</code>. What I don't want it to do is edit and delete.</p>
  
  <p>I then also have a <code>role</code> user which do everything <code>auth</code> can do AND edit and delete <code>items</code>.</p>
  
  <p>So basically, regular authorized users can have SOME access to <code>items</code> while <code>role</code> users have COMPLETE access.</p>
  
  <p>The current code seems to give <code>role</code> users ONLY edit and delete functionalities and no view or create.</p>
  
  <p>To make it even more clearer, here's what my actual route looks like:</p>
  
  <pre><code>Route::group(['middleware' =&gt; ['auth']], function()
  {
      Route::resource('items', 'SitesController');
  
      Route::group(['middleware' =&gt; ['role']], function() {
          Route::resource('item', 'ItemController', ['only' =&gt; ['edit', 'delete']]);
      });
  });
  </code></pre>
  
  <p>Maybe I'm going about this the wrong way?</p>