gpt4 book ai didi

ruby-on-rails - Rails 静态数据集

转载 作者:数据小太阳 更新时间:2023-10-29 06:50:55 25 4
gpt4 key购买 nike

处理静态数据集(非动态)的最佳方式是什么?

例如,假设您有一个包含 10 个不同实例的模型,每个实例都是唯一的,但在您的应用程序的整个生命周期中都不会改变。创建一个 activerecord 模型并将此数据存储在数据库中似乎有些过分,但创建一个通用类并将此数据存储在代码中似乎很丑陋。

什么是公认的最佳实践?


示例:

您有一个费率和一个用户。用户可以有 1-10 的等级,当等级改变时,费率改变。费率可能有其他信息,因此简单地将它存储为用户的属性可能比它的值(value)更麻烦。将它与 Rate 联系起来或像这样将其创建为 User 上的方法是否有意义:

def rate
case self.level
when 1:
{ value: "foo", something: "bar", else: "baz" }
when 2:
# etc
end
end

似乎这两种解决方案都不是理想的,但我不确定是否还有其他理想的解决方案。

最佳答案

我会将此信息存储在 YAML 文件中。你可以使用 RailsConfig gem并像这样创建一个 YAML 文件

level:
1:
some: value
another: value
2:
some: second value
another: second value

然后访问它

rate = 2
val = Settings.level[rate.to_s].some

(我不完全确定 YAML 中数字作为键,也许你必须转义它们)

关于ruby-on-rails - Rails 静态数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13382606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com