2017-05-08 7 views
0

Kann ich die folgende CodezeileKann ich entfernen Anfrage von Laravel-Controller

use Illuminate\Http\Request; 

Form Laravel-Controller entfernen? Ist das eine gute Übung? Zum Beispiel meines Homecontroller:

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 

class HomeController extends Controller 
{ 

    public function __construct() 
    { 
     $this->middleware('auth'); 
    } 

    public function index() 
    { 
     $totals = [ 
      'customers' => \App\Customer::count(), 
      'jobs' => \App\Job::count(), 
      'invoices' => \App\Invoice::count(), 
     ]; 


     $data = [ 
      'page_title' => 'Dashboard', 
      'totals' => $totals 
     ]; 

     return view('home', $data); 
    } 

} 

Hier habe ich den „Request“ nicht benötigen, weil keine der Funktionen nicht, dass der Parameter nicht verwendet.

+0

ja gehen Sie voran. kein Problem. aber keine gute Praxis, um die Anfrage von den Controllern zu entfernen – Exprator

+0

Ja, Sie können entfernen, wenn Sie diesen Namensraum nicht verwenden – vijaykumar

Antwort

3

Um eine Instanz der aktuellen HTTP-Anfrage über Dependency-Injection zu erhalten, sollten Sie die Klasse Illuminate\Http\Request auf Ihrer Controller-Methode eingeben. Die eingehende Anforderungsinstanz wird automatisch vom Dienstcontainer injiziert.

Wenn Sie also nicht wollen To obtain an instance of the current HTTP request dann entfernen Sie es.

0

Ja, wenn Sie nur Datenabfrage auswählen, können Sie fortfahren und diese Zeile entfernen. Es ist notwendig, dass Sie in Ihrer Klassenfunktion ein get oder post-Formular verwenden.

Verwandte Themen