我有一个配置表,其中包含大量的配置值, 如何创建一个可在laravel上全局使用的静态帮助程序/类?
例如,我与一个输入一个观点:
<input type="text" value="<?= SettingsHelper::getValue('my-settings-key'); ?>" />
和关闭过程我不想每次查询它,只是一个查询获取所有的配置值。
任何想法?
我有一个配置表,其中包含大量的配置值, 如何创建一个可在laravel上全局使用的静态帮助程序/类?
例如,我与一个输入一个观点:
<input type="text" value="<?= SettingsHelper::getValue('my-settings-key'); ?>" />
和关闭过程我不想每次查询它,只是一个查询获取所有的配置值。
任何想法?
你可以像这样,
class SettingHelper {
protected $items;
public function get($key, $default = null)
{
if (empty($this->items))
{
$this->loadSettingData();
}
if (array_key_exists($key, $this->items))
{
return $this->items[$key];
}
return value($default);
}
protected function loadSettingData()
{
$this->items = Setting::all()->lists('key', 'value');
}
}
需要把这个类绑定集装箱与单身。
使用雄辩的ORM并创建一个模型,然后随时可以随时创建该模型类的对象 –
我有一个'设置'模型,但这是一个设置offcourse,我喜欢40-50设置,所以我正在寻找一个地方/方法来执行'Settings :: all()'并将其存储在全局可用的帮助程序中(用于控制器,视图等) – Broshi
不能将所有设置存储在一个你称为配置表的表? –