Ho le seguenti righe di codice che vengono ripetute, non solo in molti metodi di un controller ma anche in più di un controller.Come utilizzare Cache e Keep code DRY in Laravel 5
$Categories = \Cache::rememberForever('Categories', function() {
return \App\Models\Skill\Category_Model::all();
});
C'è qualche modo utile che posso usare questo, in modo che il codice ripetuto possa essere rimosso?
@PankajGarg ovunque tu voglia, potrebbe essere ad es. app/repositories/e namespace come \ App \ Repositories \ – andr
È possibile creare questa classe in qualsiasi directory interna dell'app, basta specificare lo spazio dei nomi appropriato nella classe e utilizzare questa classe utilizzando tale spazio dei nomi nel controller. –
@PankajGarg: ho semplificato la classe repository. L'errore deriva da un problema di spazio dei nomi. Dove si trova il file di classe? È necessario impostare gli spazi dei nomi in base alla struttura delle cartelle. Oppure puoi usare un nome completo: guardando il tuo codice nel costruttore del controllore puoi specificare '\ App \ Models \ Skill \ CategoryRepository $ catRepo' invece di' CategoryRepository' se la classe 'CategoryRepository' si trova nella cartella' Skill' – Moppo