I've a Configuration model with its table in database named configurations.
It has 3 columns: id, key, and value
I'd like to cache all the key/value pairs from this table for better performance and less database transactions.
What I've done so far: I've created a Provider named ConfigurationsServiceProvider and following is the code for register() method:
public function register()
{
$this->app->singleton('configurations', function ($app) {
return $app['cache']->remember('configurations', 60, function () {
return Configuration::pluck('key', 'value')->toArray();
});
});
}
I've registered the provider in config/app.php as well.
Now I want to achieve the following:
- Access these configuration key/value pairs globally by calling a method for example
configurations('key') - Configurations data should be cached forever, for all users. It should only be re-cached when user inserts/updates any key/value record in database table
- Not important but it would be really great if I could somehow merge and access the
configurationsdata with Laravel framework's globalconfigmethod.
Also, kindly suggest if there's any better way, other than .env, to store dynamic config data for application from user interface.
from Newest questions tagged laravel-5 - Stack Overflow https://ift.tt/33zifBJ
via IFTTT
Aucun commentaire:
Enregistrer un commentaire