У меня есть следующие строки кода, которые повторяются не только во многих методах контроллера, но и в нескольких контроллерах.Как использовать кеш и сохранить код DRY в Laravel 5
$Categories = \Cache::rememberForever('Categories', function() {
return \App\Models\Skill\Category_Model::all();
});
Есть ли какой-либо полезный способ, которым я могу использовать это, чтобы повторный код можно было удалить?
@PankajGarg где угодно, может быть, например, app/repositories/namespaced как \ App \ Repositories \ – andr
Вы можете создать этот класс в любом месте внутри каталога приложения, просто вам нужно указать надлежащее пространство имен в классе и использовать этот класс, используя это пространство имен в контроллере. –
@PankajGarg: я упростил класс репозитория. Ошибка возникает из-за проблемы с пространством имен. Где размещен ваш файл класса? Вы должны установить пространства имен соответственно вашей структуре папок. Или вы можете использовать полное имя: глядя на свой код в конструкторе контроллера, вы можете указать '\ App \ Models \ Skill \ CategoryRepository $ catRepo' вместо' CategoryRepository', если класс 'CategoryRepository' находится в папке' Skill' – Moppo