如何创建一个表示数据库中的内容的静态类?
我有一张表看起来像:
AccountType ID Name Property1 Property2 Property3
在启动时,我想创建一个表示数据库行的类,我可以通过ID和Name引用它们。
我希望这是一个静态表示(它永远不会改变,如果它在极少数情况下,我可以重新启动应用程序)因为我将在我的代码中引用并且不想一直打到数据库。
我在数据库中需要它,因为我还需要将它与其他表连接。
可以这样做吗?
用法:
AccountType[1] AccountType["PRO_PLAN"]
当然。 试试这个:
#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或名称 – 来访问新的帐户类型哈希值。
- 使用Chef安装Postgres在Vagrant VM上的问题:未定义方法`ruby’用于Config:Module
- Ruby:如何检查哈希定义中是否存在变量
- 如何在haml模板中的coffeescript中的ruby代码中使用本地或实例变量
- 为什么splat在数组定义中使用?
- 使用ruby CSV模块导入csv文件时出现问题
- Ruby HTTP得到params
- if-else中的链接条件过多
- 为什么ActiveRecord :: StatementInvalid:SQLite3 :: SQLException:near“)”:语法错误:INSERT INTO“user_friendships”()VALUES()
- GroupingError:错误:列“”必须出现在GROUP BY子句中或用于聚合函数