首页 > 解决方案 > 从数据库加载用户特定设置和站点设置并将数据传递给视图和控制器

问题描述

我是一名 codeigniter 开发人员,最近我搬到了 laravel。

在 codeigniter 中,我曾经将默认值扩展ci_controller到我用来扩展my_controller的所有其他控制器my_controller

my_controller我从数据库和用户特定设置中加载站点设置。

将其存储到变量中,以便我可以从视图或控制器中的任何位置访问它

这样做的好处是管理员或用户可以从前端更新此设置。

我可以存储用户特定设置,如货币符号、短信 API 密钥等

现在我在 laravel 中寻找一种等效的方法。

通过它我可以将用户特定设置和站点设置存储在数据库中,并从任何 conteoller 或刀片文件中检索。

我知道有一个 env 文件,但据我所知,这仅适用于存储站点设置。但是如果我要存储用户特定设置怎么办?

标签: phpdatabaselaravellaravel-8

解决方案


你只需要制作一个配置文件:

<?php

// file config/site.php

return [
    'foo' => 'bar'
]

然后你需要缓存你的设置,在终端运行这个命令php artisan config:cache

然后你可以在任何你想要的地方调用你的设置:

<?php

$foo = config('site.foo');

推荐阅读