2016-04-07 13 views
0

Ich kann die Request Klasse in Laravel für eine Ajax Anfrage und die Eingabeanforderung nicht verwenden.Laravel Ajax Beitrag mit Anfrage

Ich versuche, eine Ajax-Anfrage an die Steuerung zu rufen, und dies funktioniert, bis ich die Daten anfordern wollte, die an die Steuerung gebucht wurden. Das hat etwas mit der Request Klasse zu tun, die ich benutze.

use Request; 

Diese Klasse von der Anfrage Ajax verwendet wird

use Illuminate\Http\Request; 

Dies ist die Klasse verwendet, um die Eingabe zu beantragen.

Das Problem ist, dass ich sie beide nicht verwenden kann.

public function postQuestion(Request $request) { 
    //dd($request->answer); 
    if(Request::ajax()) { 
     // $answer = new Answers; 
     // $answer->answer = $request->answer; 
     // $answer->description = "Test"; 
     // $answer->Questions_id = 1; 
     // $answer->save(); 
     return Response::json($request->answer); 
    } 
} 

Dies ist mein Code, was ich geschrieben habe. Wer sieht etwas Vertrautes? Oder hat eine Antwort dafür?

+0

Sorry, aber ich bin mir nicht sicher, was Sie fragen? Können Sie '$ request-> ajax()' oder '$ request-> input ('myParameter')' nicht ausführen? – Rash

+1

Meinst du, beide Klassen werden gleich benannt? Sie können einem von ihnen einen Alias ​​zuweisen, wenn das der Fall ist: 'Verwenden Sie Request als Request2;' – Rainner

+1

Ahh jetzt verstehe ich die Frage. Deine Namespaces kollidieren. Verwenden Sie einfach einen anderen Namespace. z.B. Verwenden Sie 'Illuminate \ Http \ Request als SomeOtherRequest' – Rash

Antwort

1

Ausgabe erwies sich als nicht in der Lage zwei Klassen zu verwenden, mit dem gleichen Namensraum. Für diesen Fall stellt PHP das Schlüsselwort as zur Verfügung.

use Illuminate\Http\Request as HttpRequest; 
use Some\Other\Namespace\Request; 

dann können beide Klassen im Code verwendet werden. Z.B. HttpRequest::method() und Request::method()

1

können Sie verwenden?

public function postQuestion(Requests\ModelRequest $request) { //your logic } 

ersetzen Ihr Modell in Requests \ ModelRequest