我有一张表格如下:
AccountType
ID Name Property1 Property2 Property3
在启动时,我想创建一个表示数据库行的类,我可以通过ID和名称来引用它。
我希望这是一个静态表示(它永远不会改变,如果它在极少数情况下,我可以重新启动应用程序)因为我将在我的代码中引用并且不想命中数据库所有时间。
我在数据库中需要它,因为我还需要将它与其他表连接起来。
可以这样做吗?
用法:
AccountType[1]
AccountType["PRO_PLAN"]
答案 0 :(得分:3)
当然。试试这个:
#config/initializers/constants_from_account.rb
ACCOUNT_TYPE = {}
AccountType.all.each do |account_type|
ACCOUNT_TYPE[account_type.name] = account_type
ACCOUNT_TYPE[account_type.id] = account_type
end
然后,您可以使用ACCOUNT_TYPE [1]或ACCOUNT_TYPE [“PRO_PLAN”] - ID或名称 - 来访问新的帐户类型哈希值。