存储默认值的做法?

时间:2015-11-28 16:51:25

标签: ruby-on-rails

假设我的一个表中有列for i in range(mikos): lista3[i]=lista1[i]+lista2[i] print(lista3) #'mikos' is the number of elements in each list ,应该有一个代码列表,可以保存在数据库中。问题是它们中有100多个,所以我不想将它们作为代码的一部分存储或通过无线电形式提交。

解决这个问题的更好方法是什么?项目是否将这些值存储在单独的数据库表中?或者可能是其他常见做法?

1 个答案:

答案 0 :(得分:0)

如果事物列表可能经常更改,或者您需要授予访问权限以某种方式更改它们...那么是的,将它们添加到数据库中的表中,只需从中创建belongs_to关系需要引用它们的模型。

如果列表永远不会更改,那么为什么不将其设为enum属性,只需将列表添加到模型中:

class YourModel < ActiveRecord::Base
  enum code: %i(code1 code2 code3 ... code99 code100)
end

您应该在迁移文件中将code列定义为integer,以便将其正确用作枚举属性。

在这里阅读更多内容: http://api.rubyonrails.org/v4.1/classes/ActiveRecord/Enum.html