【发布时间】:2015-03-08 23:25:54
【问题描述】:
我正在 Laravel 中构建一个网络应用程序。 我有很多应用配置选项,例如:
- 付费计划的价格
- 试用模式的最长天数
- 免费用户可以拥有的最大积分数
- 默认电子邮件发件人地址
这些选项在整个应用程序中都使用,并且大部分时间都应该可用。我正在考虑有一个“配置”数据库表来存储和一个配置对象来访问数据......这会是一个好的解决方案吗?如果没有,我应该怎么做?
【问题讨论】:
标签: php laravel architecture
我正在 Laravel 中构建一个网络应用程序。 我有很多应用配置选项,例如:
这些选项在整个应用程序中都使用,并且大部分时间都应该可用。我正在考虑有一个“配置”数据库表来存储和一个配置对象来访问数据......这会是一个好的解决方案吗?如果没有,我应该怎么做?
【问题讨论】:
标签: php laravel architecture
这样的配置一般有两种可能:
哪一种更适合您的情况取决于:
几乎从不,然后去找文件。 经常,然后去 DB
只有您的管理员具有 cli/ssh 访问权限,然后再查找文件。 一大群人,那就去DB
如果是,那么也许你可以利用 Laravel 标准配置中的环境检测方法
一般来说,我估计平面文件总是更高效且更易于扩展。
在我当前的应用程序中,我同时使用两者:
平面文件配置包含: 用户可以上传的文件限制;默认缩略图大小;可用语言;一些第三方代币;邮件返回地址。
我估计这些东西只会偶尔更改一次,并且总是需要我的(管理员)干预。
数据库有包裹价格表;奖励条件和相关奖励。
网站所有者(我的客户)可以轻松更改这些值,并且它们还包含结构化元数据。例如。如何颁发奖项,如何称呼和翻译等。
【讨论】: