我应该使用整数或字符串来声明此属性吗?

时间:2016-09-22 15:39:23

标签: ruby-on-rails database

我正在使用Ruby on Rails构建应用程序来测量人口统计变量。现在,我对如何从属于用户模型的模型(统计数据)的两个属性声明数据类型存有疑问。这个属性是" genere"和"公民身份"。我知道元素可能是字符串数据但是如果我假装用这个信息做一些统计,那么会更方便地将这些数据声明为整数吗?,也就是说,这是统计中的主格数据所以一个数字足以代表一个地位或一个属,即。 1 - > femenin / 2 - > masculin。

我非常感谢你的建议。谢谢你的时间。

1 个答案:

答案 0 :(得分:2)

Selenium grid这些是整数位掩码,对于有明确选择的属性以及添加/删除选项是开发人员级别关注的属性来说,这通常是一种很好的方法。

class Person < ApplicationRecord
  enum gender: [:undisclosed, :male, :female, :other]
end 

这会将性别存储在值为0-3的整数列中。扫描和索引的列比字符串列快得多。

它还为您节省了将可接受的字符串值列入白名单并根据值编写范围的麻烦。

你可以Person.female来获得范围。