2017-05-15 3 views
0

Dies ist die Funktion, die ich in meinem ControllerLumen Get Anfrage und Abfrage funktioniert nicht

public function searchColors(Request $request) 
    { 
     $die = $request['die']; 
     $colors = DB::table('paintline')->where('die', '=', $die) 
          ->get(); 

     return response()->json(['colors' => $colors], 200); 
    } 

Die Route gibt es 2 wie folgt

$app->group(['prefix' => 'api/v1'], function($app) { 

    $app->get('/info/{die}', [ 
     'uses' => '[email protected]' 
    ]); 
}); 

Wenn ich hart codieren den Chip-Wert in meinem Controller anzurufenden Reihen

$colors = DB::table('paintline')->where('die', '=', '9ISF4') 
          ->get(); 

Aber wenn ich Postbote oder firefox diese uRL testen gerade diesezurück 10

myApp.app/api/v1/info/9ISF4

+1

Laravel/Lumen passiert Pfadparameter als Argument an die Steuerung. Sie können also den Wert von '/ info/{die}} wie' public function searchColors ($ sterben, Request $ Anfrage) ' – jfadich

+0

Es hat funktioniert! Danke @jfadich – derrickrozay

Antwort

0

Wenn Sie diesen Ausdruck in Ihrer Route Datei:

$app->get('/info/{die}', [ 
    'uses' => '[email protected]' 
]); 

Dann die wird als Argument in Ihrer Controller-Methode übergeben werden (die Route in diesem Fall verantwortlich ist), es ist also nicht erreichbar über \Illuminate\Http\Request. Für den Zugriff auf Ihre die "Variable", ändern Sie Ihre Controller-Methode in etwa wie folgt:

public function searchColors(string $die, Request $request) 
{ 
    // dd($die); 
} 
Verwandte Themen