在我们的应用程序中,我们将根据用户的分数向用户提供标题。因此,如果用户有10-99分,该用户可能获得“新手”标题,但是具有100-199分的用户可能获得“常规用户”标题。我计划使用属性和关系急切加载用户的点数,一旦我得到这些点数,我将使用属性方法来分配标题。
但是如何获得可能的标题列表呢?
我可以制作模型,迁移和种子文件,但我觉得这些标题不会发生太大变化,当然也不需要在API调用中更新。我还可以对一系列点和标题进行硬编码并快速查找以查看哪个标题属于用户,但我需要以某种方式将这些标题以属性方法提供给用户。或者我可以将它们存储在存储库或缓存中。
我可以从模型中访问存储库吗?无论如何将这种数据存储在数据库中是否更好,无论它更新或查询的频率如何?
答案 0 :(得分:0)
您可以使用.env
文件中的条目来存储条目,然后在php中使用一些逻辑来选择正确的.env
条目。
LEVEL_1_TITLE=Novice
LEVEL_2_TITLE=Regular
...
if($user->points < 99){
$title = env('LEVEL_1_TITLE');
}
...
或者从您创建的类中的array
执行相同的操作,并根据这些点选择正确的数组条目。