Ich habe immer eloquent Bereiche filtern eloquent Ergebnisse verwendet: https://laravel.com/docs/5.1/eloquent#query-scopes
Ihr Controller:
use App\Item;
class ItemController extends Controller
{
public function index(Request $request)
{
$items = Item::name($request->name)->price($request->price)->paginate(25);
return view('items.index', compact('items'));
}
}
Ihr Modell:
class Item extends Model
{
public function scopeName($query, $name)
{
if (!is_null($name)) {
return $query->where('name', 'like', '%'.$name.'%');
}
return $query;
}
public function scopePrice($query, $price)
{
if (!is_null($price)) {
return $query->where(compact('price'));
}
return $query;
}
}
Ihre Ansicht:
In Ihren Bereichen können Sie prüfen, ob der angegebene Wert null ist, bevor Sie die Abfrageergebnisse einschränken. Dadurch können Benutzer paginierte Ergebnisse effektiv suchen und filtern.
Bitte beachten Sie mit dem Punkt beenden Sätze, Fragezeichen am Ende einer Frage, und Großbuchstaben am Anfang eines neuen Satzes. – trincot
Ja, mein Fehler. Entschuldigen. – aGoodRussianGuy
Warum haben Sie Ihre Frage nicht bearbeitet? Ich habe es jetzt für dich bearbeitet. – trincot