Skip to content

Instantly share code, notes, and snippets.

@mohammad-fouladgar
Created August 28, 2018 09:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mohammad-fouladgar/ddd1564fb4e979f61c34a68a2746245c to your computer and use it in GitHub Desktop.
Save mohammad-fouladgar/ddd1564fb4e979f61c34a68a2746245c to your computer and use it in GitHub Desktop.
legacy code for making filter in Laravel
<?php
namespace App\Http\Controllers;
use App\User;
use Illuminate\Http\Request;
class UserController extends Controller
{
public function index(Request $request)
{
$users = User::where('is_active', true);
if ($request->has('age_more_than')) {
$users->where('age', '>', $request->age_more_than);
}
if ($request->has('gender')) {
$users->where('gender', $request->gender);
}
if ($request->has('has_published_post')) {
$users->where(function ($query) use ($request) {
$query->whereHas('posts', function ($query) use ($request) {
$query->where('is_published', $request->has_published_post);
});
});
}
return $users->get();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment