title: How can I delete a post resource in laravel 5?
body: <p><strong>Laravel 5 version</strong></p>
  
  <p>I am working on a project with the new laravel 5 release and for some reason i cannot delete a post, when I press delete it just redirects me to the post show page with the id such as /post/3 and I get a blank white page, when I go back to index view I get all the posts and that one has not been deleted. Here is what I have below:</p>
  
  <p><strong>Posts migration file</strong></p>
  
  <pre><code>use Illuminate\Database\Migrations\Migration;
  use Illuminate\Database\Schema\Blueprint;
  
  class CreatePostsTable extends Migration {
  
      /**
       * Run the migrations.
       *
       * @return void
       */
      public function up()
      {
          Schema::create('posts', function(Blueprint $table)
          {
              $table-&gt;increments('id');
              $table-&gt;string('title')-&gt;default('');
              $table-&gt;string('slug')-&gt;default('');
              $table-&gt;text('body');
              $table-&gt;integer('author_id');
              $table-&gt;string('author');
              $table-&gt;string('featured_image');
              $table-&gt;softDeletes();
              $table-&gt;timestamps();
          });
      }
  
  
      /**
       * Reverse the migrations.
       *
       * @return void
       */
      public function down()
      {
          Schema::drop('posts');
      }
  
  }
  </code></pre>
  
  <p><strong>PostsController</strong></p>
  
  <pre><code>use Input;
  use Redirect;
  use Storage;
  use SirTrevorJs;
  use STConverter;
  use Validator;
  use Image;
  use Boroughcc\Post;
  use Boroughcc\Http\Requests;
  use Boroughcc\Http\Controllers\Controller;
  
  use Illuminate\Http\Request;
  
  class PostsController extends Controller {
      /**
       * Display a listing of the resource.
       *
       * @return Response
       */
      public function index()
      {
          $posts = Post::all();
          return view('posts.index', compact('posts'));
      }
      /**
       * Update the specified resource in storage.
       *
       * @param  int  $id
       * @return Response
       */
      public function update(Post $post)
      {
          //
          $this-&gt;middleware('auth');
          $input = array_except(Input::all(), '_method');
          $post-&gt;update($input);
  
          return Redirect::route('posts.show', $post-&gt;slug)-&gt;with('message', 'Post updated.');
      }
      /**
       * Remove the specified resource from storage.
       *
       * @param  int  $id
       * @return Response
       */
      public function destroy(Post $post)
      {
          //
          //$post = Post::findOrFail($id);
          $post-&gt;delete();
          if($post-&gt;delete()) { 
              return Redirect::route('posts.index')-&gt;with('message', 'Post deleted.');
          }
      }
  
  }
  </code></pre>
  
  <p>As far as i am aware, this is okay but I think its the delete method that is screwing with it all. In my routes file I have the route resources set up so in <code>php artisan</code> to display routes I can see the destroy route like so:</p>
  
  <pre><code>|        | GET|HEAD                       | posts                                                 | posts.index   | Boroughcc\Http\Controllers\PostsController@index                 |            |
  |        | GET|HEAD                       | posts/create                                          | posts.create  | Boroughcc\Http\Controllers\PostsController@create                |            |
  |        | POST                           | posts                                                 | posts.store   | Boroughcc\Http\Controllers\PostsController@store                 |            |
  |        | GET|HEAD                       | posts/{posts}                                         | posts.show    | Boroughcc\Http\Controllers\PostsController@show                  |            |
  |        | GET|HEAD                       | posts/{posts}/edit                                    | posts.edit    | Boroughcc\Http\Controllers\PostsController@edit                  |            |
  |        | PUT                            | posts/{posts}                                         | posts.update  | Boroughcc\Http\Controllers\PostsController@update                |            |
  |        | PATCH                          | posts/{posts}                                         |               | Boroughcc\Http\Controllers\PostsController@update                |            |
  |        | DELETE                         | posts/{posts}                                         | posts.destroy | Boroughcc\Http\Controllers\PostsController@destroy
  </code></pre>
  
  <p><strong>Post form with delete button</strong></p>
  
  <p>In here I have got a simple button that tells the form to delete the resource from the index list and take it from the table.</p>
  
  <pre><code>{!! Form::open(array('class' =&gt; 'form-inline', 'method' =&gt; 'DELETE', 'route' =&gt; array('posts.destroy', $post-&gt;id))) !!}
                      &lt;li&gt;
                          &lt;img src="{!! $post-&gt;featured_image !!}" alt="" /&gt;
                          &lt;a href="{{ route('posts.show', $post-&gt;id) }}"&gt;{{ $post-&gt;title }}&lt;/a&gt;
                      &lt;/li&gt;
                      (
                          {!! link_to_route('posts.edit', 'Edit', array($post-&gt;slug), array('class' =&gt; 'btn btn-info')) !!},
                          {!! Form::submit('Delete', array('class' =&gt; 'btn btn-danger')) !!}
                      )
                  {!! Form::close() !!}
  </code></pre>
  
  <p>What I am getting is nothing, no post gets deleted at all. Any answers or points to the right place would be awesome.</p>