2017-11-06 6 views
0

Mit einem Code für Excel Erstellen lade ich die unten erwähnte Störung erhalte ...Laravel Fehler: MethodNotAllowedHttpException in RouteCollection.php

MethodNotAllowedHttpException in RouteCollection.php

Die in VIEW geschrieben Codes ist

views/Artikel/Artikel

@extends('layouts.master') 

@section('content') 
     <div class="row"> 
     <div class="col-md-4"></div> 
     <div class="col-md-6"> 
      <div class="row"> 
<form action="{{route('items.import')}}" method="POST" enctype="multipart/form-data"> 
       <div class="col-md-6"> 
       {{csrf_field()}} 
       <input type="file" name="imported-file"/> 
       </div> 
       <div class="col-md-6"> 
        <button class="btn btn-primary" type="submit">Import</button> 
       </div> 
      </form> 
      </div> 
     </div> 
     <div class="col-md-2"> 
     <!-- <button class="btn btn-success">Export</button> --> 
     </div> 
     </div> 

    @endsection 

Die in route.php geschrieben Codes ist ...

Route::get('/items', '[email protected]'); 

Route::post('/items/import',[ 'as' => 'items.import', 'uses' => '[email protected]']); 

ItemController.ASPX

public function index() 
    { 
     return view('items.items'); 
    } 

    /** 
    * Show the form for creating a new resource. 
    * 
    * @return Response 
    */ 
public function import(Request $request) 
    { 
     if($request->file('imported-file')) 
     { 
       $path = $request->file('imported-file')->getRealPath(); 
       $data = Excel::load($path, function($reader) { 
      })->get(); 

      if(!empty($data) && $data->count()) 
     { 
     $data = $data->toArray(); 
     for($i=0;$i<count($data);$i++) 
     { 
      $dataImported[] = $data[$i]; 
     } 
      } 
     Inventory::insert($dataImported); 
     } 
     return back(); 
    } 

Kann jemand bitte helfen Sie mir, was in meinem Codierung bin fehlt, der den Fehler ausgibt ...

Antwort

0

diesen Code Versuchen anstelle von Ihnen:

Route::post('/items/import',[ 'as' => 'items/import', 'uses' => '[email protected]']); 

Die Trick ist - die Route muss benannt werden. Um zukünftige Verwirrung zu vermeiden, ist es besser, sie als "items.import" zu benennen, damit Sie später selbst feststellen können, dass dies ein "Name" einer Route ist. So ist der endgültige Code wäre:

Route::post('/items/import',[ 'as' => 'items.import', 'uses' => '[email protected]']); 

und in Blattvorlage u es so nennen:

<form action="{{route('items.import')}}"... 
+0

Sie haben einen Tippfehler. Es wäre 'route ('items.import')'. – fubar

+0

@fubar Tnx! Fest! – sandcode

+0

@sandcode ... danke, aber bekomme diesen Fehler jetzt ... NotFoundHttpException in RouteCollection.php – user3305327

Verwandte Themen