cache api

This commit is contained in:
2021-05-23 15:04:12 +05:00
parent 49d26adb58
commit 4629067572

View File

@@ -5,6 +5,7 @@ namespace App\Http\Controllers\API;
use App\Article; use App\Article;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Cache;
class ArticleFilter extends Controller class ArticleFilter extends Controller
{ {
@@ -20,21 +21,23 @@ class ArticleFilter extends Controller
"term" => "required" "term" => "required"
]); ]);
return Article::with('source')->where('title', 'like', '%' . $request->get('term') . '%') return Cache::remember('articles.filter.' . $request->term, 300, function () use ($request) {
->latest('published_date') return Article::with('source')->where('title', 'like', '%' . $request->get('term') . '%')
->limit(12) ->latest('published_date')
->get() ->limit(12)
->transform(function ($article) { ->get()
return [ ->transform(function ($article) {
"title" => $article->title, return [
"url" => $article->url, "title" => $article->title,
"author" => $article->author, "url" => $article->url,
"featured_image" => $article->featured_image, "author" => $article->author,
"published_date" => $article->published_date, "featured_image" => $article->featured_image,
"meta" => $article->meta, "published_date" => $article->published_date,
"source" => $article->source->name, "meta" => $article->meta,
"body" => $article->body[0], "source" => $article->source->name,
]; "body" => $article->body[0],
}); ];
});
});
} }
} }