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